Erfassen Sie Ihre Fortschritte
Trailhead-Startseite
Trailhead-Startseite

Kennenlernen der Salesforce Lightning-Plattform-APIs

Lernziele

Nachdem Sie diese Lektion abgeschlossen haben, sind Sie in der Lage, die folgenden Aufgaben auszuführen:
  • Beschreiben, welche Vorteile der Entwicklungsansatz "API-first" hat
  • Nennen von Anwendungsfällen für REST API, SOAP API, Bulk API und Streaming API
  • Erläutern der beiden Arten von API-Obergrenzen und ihrer Berechnung

"API first" bei Salesforce

Ahoi, Seemann! Sind Sie bereit, in See zu stechen und sich auf die Suche nach der perfekten Salesforce-API für die von Ihnen erstellte Integrationslösung zu machen? Nun denn, Kapitän. Legen Sie Augenklappe und Papagei bereit. Sie werden durch die Wasser der Lightning-Plattform kreuzen und alles über unsere APIs lernen.

Die Welt der Salesforce-APIs ist so riesig wie der Ozean blau ist. Das liegt an Salesforce "API first"-Ansatz bei der Entwicklung von Funktionen in der Salesforce Platform. "API first" bedeutet, dass für eine Funktion erst eine robuste API erstellt wird, bevor man sich an das Design der Oberfläche macht. Dieser Ansatz gibt Ihnen als Salesforce-Entwickler die Flexibilität, Ihre Daten ganz nach Wunsch zu bearbeiten.

Salesforce ist bekannt, dass seine Kunden und Partner ständig neue Möglichkeiten suchen, den Funktionsumfang von Salesforce auszuweiten und spannende Anwendungen für AppExchange zu erstellen. Daher ist die Bereitstellung umfassender Entwicklungstools auf der Plattform äußerst wichtig. Dieser Ansatz ermöglicht Salesforce zudem, Oberflächen auf die APIs aufzusetzen und damit ein einheitliches Verhalten unter den APIs sicherzustellen.

Stellen Sie sich dieses Modul als Ihren Steuermann durch die Welt der APIs vor. Sie werden einige allgemeine API-Informationen erfahren, sich einen Überblick über die API-Suite von Salesforce verschaffen und tiefer in einige gängige APIs eintauchen. All diese Informationen versetzen Sie dann in die Lage, die richtige API für Ihr Projekt auszuwählen.

Salesforce-Daten-APIs

Im Ozean der Salesforce-APIs gibt es wichtiges Archipel mit häufig verwendeten APIs, auf die wir in diesem Modul den Schwerpunkt legen. Es handelt sich hierbei um REST API, SOAP API, Bulk API und Streaming API. Zusammen bilden sie die Gruppe der Salesforce-Daten-APIs. Sie haben den Zweck, Ihnen die Bearbeitung Ihrer Salesforce-Daten zu ermöglichen, während andere APIs Ihnen die Möglichkeit geben, Seitenlayouts anzupassen oder benutzerdefinierte Entwicklungstools zu erstellen. Sie können auch andere Salesforce-APIs verwenden, um Teilmengen Ihrer Salesforce-Daten zu bearbeiten. Die Analytics-REST-API legt den Schwerpunkt beispielsweise auf Analytics. Diese vier APIs lassen sich jedoch auf ein breites Spektrum zentraler Salesforce-Daten anwenden.
Salesforce-Daten-APIs

REST API

Die REST-API ist ein einfacher, leistungsfähiger Webservice auf der Basis von RESTful-Grundsätzen. Sie stellt vielerlei Salesforce-Funktionen mittels REST-Ressourcen und HTTP-Methoden zur Verfügung. Sie können zum Beispiel CRUD-Grundfunktionen ("create" (erstellen), "read" (lesen), "update" (aktualisieren), "delete" (löschen)) auf Datensätze anwenden, Ihre Daten durchsuchen oder abfragen, Objektmetadaten abrufen und auf Informationen über Limits innerhalb Ihrer Organisation zugreifen. Die REST-API unterstützt sowohl XML als auch JSON.

Da die REST-API über eine kompakte Anforderungs- und Antwortstruktur verfügt und einfach zu verwenden ist, eignet sie sich ideal zum Schreiben von Web- und mobilen Anwendungen.

SOAP-API

Die SOAP-API ist ein robuster, leistungsfähiger Webservice, der auf dem gleichnamigen Branchenstandardprotokoll basiert. Diese API verwendet eine WSDL-Datei (Web Services Description Language), um die Parameter für den Datenzugriff mittels der API strikt zu definieren. Die SOAP-API unterstützt nur XML. Der Großteil der SOAP-API-Funktionalität steht auch über die REST-API zur Verfügung. Die Wahl der AP hängt im Prinzip nur davon ab, welcher Standard Ihre Anforderungen besser erfüllt.

Da die SOAP-API die WSDL-Datei als formellen Vertrag zwischen der API und dem Verbraucher verwendet, eignet sie sich hervorragend zum Schreiben von Integrationslösungen zwischen Servern.

Bulk-API

Die Bulk-API ist eine spezialisierte RESTful-API für das gleichzeitige Laden und Abfragen großer Datenmengen. Und "große Datenmenge" bedeutet hier 50.000 Datensätze und mehr. Die Bulk-API ist asynchron, das heißt, Sie können eine Anforderung senden und sich später die Ergebnisse ansehen. Diese Methode ist besonders bei der Arbeit mit großen Datenmengen sinnvoll. Es gibt zwei Versionen der Bulk-API (1.0 und 2.0). Beide Versionen können große Datenmengen verarbeiten. Bei diesem Modul verwenden wir jedoch die Bulk-API 2.0, da ihre Verwendung ein bisschen einfacher ist.

Die Bulk-API eignet sich für die Durchführung von Aufgaben, die viele Datensätze betreffen, wie etwa das erste Laden von Daten in Ihre Organisation.

Streaming-API

Die Streaming-API ist eine spezialisierte API zum Einrichten von Benachrichtigungen, die ausgelöst werden, wenn Änderungen an Ihren Daten vorgenommen werden. Die API verwendet ein Publish-Subscribe-Modell (auch pub/sub-Modell genannt), bei dem Benutzer Kanäle abonnieren können, die bestimmte Arten von Datenänderungen bekannt machen.

Das pub/sub-Modell verringert die Zahl der API-Anforderungen, da keine Abfragen notwendig sind. Die Streaming-API eignet sich hervorragend zum Schreiben von Anwendungen, die andernfalls häufig Änderungen abfragen müssten.

API-Zugriff und Authentifizierung

Sie brauchen keine Schatzkarte, um auf Salesforce-APIs zuzugreifen. Sie brauchen nur einen Trailhead Playground oder eine Organisation in einer der folgenden Editionen: Enterprise Edition, Unlimited Edition, Developer Edition, Performance Edition oder Professional Edition (mit einem Add-On). Stellen Sie sicher, dass Sie über die Berechtigung "API-aktiviert" verfügen. Ist das der Fall, können Sie mit der Entwicklung von Integrationslösungen loslegen.

Für alle API-Aufrufe, mit Ausnahme des SOAP API-Aufrufs login(), ist eine Authentifizierung notwendig. Sie können entweder einen der unterstützten OAuth-Flows verwenden oder sich mit einer Sitzungs-ID authentifizieren, die Sie aus dem SOAP API-Aufruf login() ermitteln. Ermitteln Sie anhand des Entwicklerhandbuchs die für Sie geeignete API, und dann kann es auch schon losgehen.

API-Obergrenzen

Jeder gute Kapitän weiß, dass er zum Wohl des Schiffs der Mannschaft Grenzen setzen muss. Lässt der Kapitän zu, dass die Matrosen die ganze Nacht Rum trinken, bleibt am nächsten Tag die Arbeit sicherlich liegen. Analog dazu limitiert Salesforce die Zahl der API-Aufrufe pro Organisation, um den Zustand der Instanz zu schützen. Diese Grenzwerte werden festgelegt, damit defekte Skripts unsere Server nicht zu Treibholz verarbeiten können. Den täglichen Ablauf stören diese Grenzwerte nicht. Sie sollten sich trotzdem damit vertraut machen.

Es gibt zwei Arten von API-Obergrenzen. Grenzen für die gleichzeitige Verwendung beschränken die Anzahl von Aufrufen mit langer Ausführungsdauer (20 Sekunden oder länger), die gleichzeitig ausgeführt werden. Obergrenzen beschränken die Anzahl an Aufrufen, die innerhalb eines laufenden 24-Stunden-Zeitraums zulässig sind.

Grenzen für die gleichzeitige Verwendung variieren nach Organisationstyp. Bei einem Trailhead Playground liegt der Grenzwert bei fünf gleichzeitigen Aufrufen mit langer Ausführungsdauer. Bei Sandbox-Organisationen beträgt der Grenzwert 25 Aufrufe mit langer Ausführungsdauer.

Obergrenzen variieren abhängig von der Edition der Organisation, der Art der Lizenz und den Expansion Packs, die Sie möglicherweise gekauft haben. Nehmen wir beispielsweise an, eine Enterprise Edition-Organisation erhält 1000 Aufrufe pro Salesforce-Lizenz und 200 Aufrufe pro Partner Community-Lizenz. Das Pack "Additional API Calls" (Zusätzliche API-Aufrufe) ermöglicht derselben Enterprise Edition-Organisation weitere 4.000 Aufrufe. Für Obergrenzen gelten zudem Mindest- und Höchstwerte, die auf der Edition der Organisation basieren, was hier jedoch nicht vertieft werden soll. Weitere Informationen finden Sie unter dem Link "Salesforce Developer Limits" and "Allocations Quick Reference" im Abschnitt "Ressourcen".

Sie haben mehrere Möglichkeiten zu prüfen, wie viele API-Aufrufe Ihnen noch verbleiben.
  • Das Feld "API-Nutzung" auf der Seite "Systemüberblick". (Geben Sie unter Setup im Feld "Schnellsuche" den Text "Systemüberblick" ein und wählen Sie dann Systemüberblick aus.)
  • Informationen, die im Antwortheader Sforce-Limit-Info für REST-APIs zurückgegeben werden.
  • Informationen, die im Antworttext (in <type>API REQUESTS</type>) für SOAP-APIs zurückgegeben werden.
  • Der Aufruf von /limits in der REST-API der Lightning-Plattform.
  • Die Obergrenze für API-Anforderungen pro Monat (verwendungsbasierte Ansprüche). Gezeigt werden Ihnen die API-Aufrufe Ihrer Organisation über 30 Tage aggregiert.
Sie können auch Benachrichtigungen einrichten, damit Sie informiert werden, wenn Ihre Organisation eine von Ihnen festgelegte Anzahl von API-Aufrufen überschreitet. Geben Sie hierzu unter "Setup" im Feld "Schnellsuche" den Text "API-Verwendungsbenachrichtigungen" ein und wählen Sie dann API-Verwendungsbenachrichtigungen aus.

Welche API ist die Richtige?

Die Wahl der richtigen API für Ihre Integrationslösungen ist eine wichtige Entscheidung. Die folgenden Informationen zu unseren am häufigsten verwendeten APIs beinhalten unterstützte Protokolle, Datenformate, Kommunikationsparadigmen und Anwendungsfälle. Ziehen Sie diesen Abschnitt als Referenz zu Rate, wenn Sie überlegen, welche API Sie verwenden werden.

Beachten Sie auch die vier Daten-APIs, die bereits erwähnt wurden. Wir werden uns jede einzelne davon demnächst genauer ansehen.

API-Name Protokoll Datenformat Kommunikation
REST API REST JSON, XML Synchron
SOAP-API SOAP (WSDL) XML Synchron
Chatter-REST-API REST JSON, XML Synchron (Fotos werden asynchron verarbeitet)
Benutzeroberflächen-API REST JSON Synchron
Analytics-REST-API REST JSON, XML Synchron
Bulk-API REST CSV, JSON, XML Asynchron
Metadaten-API SOAP (WSDL) XML Asynchron
Streaming-API Bayeux JSON Asynchron (Datenstream)
Apex-REST-API REST JSON, XML, benutzerdefiniert Synchron
Apex-SOAP-API SOAP (WSDL) XML Synchron
Tooling-API REST oder SOAP (WSDL) JSON, XML, benutzerdefiniert Synchron

Einsatzmöglichkeiten der REST-API

Die REST-API bietet eine leistungsstarke, bequeme und einfache Webservices-Schnittstelle auf REST-Basis für die Interaktion mit Salesforce. Zu den Vorteilen zählen einfache Integration und Entwicklung. Für mobile Anwendungen und Web 2.0-Projekte ist die API eine ausgezeichnete Wahl hinsichtlich der Technologie. Für bestimmte Projekte sollten Sie die REST-API mit anderen Salesforce REST-APIs verwenden. Verwenden Sie die Benutzeroberflächen-API zum Erstellen einer Benutzeroberfläche zum Erstellen, Lesen, Aktualisieren und Löschen von Datensätzen. Dazu zählt auch die Erstellung einer Benutzeroberfläche für Listenansichten, Aktionen und abhängige Auswahllisten. Um eine Benutzeroberfläche für Chatter, Communities oder Empfehlungen zu erstellen, verwenden Sie die Chatter-REST-API. Wenn viele zu verarbeitende Datensätze vorliegen, sollten Sie vielleicht die Verwendung der Bulk-API in Betracht ziehen, die auf den REST-Prinzipien basiert und für die Verarbeitung großer Datensätze optimiert ist.

Einsatzmöglichkeiten der SOAP-API

Die SOAP-API bietet eine leistungsstarke, bequeme und einfache Webservices-Schnittstelle auf SOAP-Basis für die Interaktion mit Salesforce. Mit der SOAP-API können Sie Datensätze erstellen, abrufen, aktualisieren und löschen. Sie können die SOAP-API außerdem für Suchvorgänge und vieles mehr verwenden. Sie können die SOAP-API in jeder Sprache verwenden, die Webservices unterstützt.

Beispielsweise können Sie über die SOAP-API Salesforce in das ERP- und Finanzsystem Ihrer Organisation integrieren. Sie können damit außerdem Vertriebs- und Supportdaten in Echtzeit für Unternehmen-Portale bereitstellen und Kundendaten in wichtige Geschäftssysteme übernehmen.

Einsatzmöglichkeiten der Chatter-REST-API

Verwenden Sie die Chatter-REST-API, um Chatter-Feeds, Benutzer, Gruppen oder Follower anzuzeigen, und zwar besonders in mobilen Anwendungen. Die Chatter-REST-API bietet zudem programmatischen Zugriff auf Dateien, Empfehlungen, Themen, Benachrichtigungen, Data.com-Käufe und mehr. Die Chatter-REST-API ähnelt APIs, die von anderen Unternehmen mit Feeds angeboten werden, wie Facebook und Twitter, aber sie macht auch andere Salesforce-Funktionen außer Chatter verfügbar.

Einsatzmöglichkeiten der Benutzeroberflächen-API

Erstellen Sie die Salesforce-Benutzeroberfläche für native mobile Anwendungen und benutzerdefinierte Webanwendungen mithilfe derselben API, die Salesforce zum Erstellen von Lightning Experience und Salesforce für Android, iOS und mobiles Web verwendet. Gestalten Sie Benutzeroberflächen, auf denen Benutzer mit Datensätzen, Listenansichten, Aktionen, Favoriten und mehr arbeiten können. Sie erhalten in einer einzigen Antwort nicht nur Daten und Metadaten, sondern auch Metadatenänderungen, die von Salesforce-Administratoren an der Organisation vorgenommen wurden. Sie müssen sich keine Gedanken über Layouts, Auswahllisten, Feldebenensicherheit oder Freigabe machen. Sie müssen lediglich eine Anwendung erstellen, die Benutzer lieben.

Einsatzmöglichkeiten der Analytics-REST-API

Mit der Analytics-REST-API können Sie programmgesteuert auf Analytics-Datenbestände wie Datensets, Linsen und Dashboards zugreifen. Senden Sie Abfragen direkt an die Analytics-Plattform. Greifen Sie auf Datensets zu, die in die Analytics-Plattform importiert wurden. Erstellen Sie Linsen und rufen Sie sie ab. Greifen Sie auf XMD-Informationen zu. Rufen Sie eine Liste der Datenset-Versionen ab. Erstellen Sie Analytics-Anwendungen und rufen Sie sie ab. Erstellen Sie Analytics-Dashboards, aktualisieren Sie sie und rufen Sie sie ab. Rufen Sie eine Liste der Abhängigkeiten für eine Anwendung ab. Stellen Sie fest, welche Features dem Benutzer zur Verfügung stehen. Verwenden Sie Snapshots. Bearbeiten Sie replizierte Datensets.

Einsatzmöglichkeiten der Bulk-API

Die Bulk-API basiert auf REST-Prinzipien und ist für das Laden oder Löschen großer Datensets optimiert. Sie ermöglicht das asynchrone Abfragen, die Verwendung von "queryAll", das Einfügen, Aktualisieren, gleichzeitige Aktualisieren/Einfügen oder Löschen vieler Datensätze, indem Batches gesendet werden. Salesforce verarbeitet Batches im Hintergrund.

Die SOAP-API dagegen ist für Echtzeit-Clientanwendungen optimiert, bei denen jeweils nur wenige Datensätze aktualisiert werden. Sie können die SOAP-API zum Verarbeiten einer größeren Anzahl an Datensätzen verwenden. Die SOAP-API ist jedoch weniger praktisch, wenn die Datensets Hunderte oder Tausende von Datensätzen enthalten. Die Bulk-API ist so konzipiert, dass das Verarbeiten von Daten aus einigen Tausend bis hin zu Millionen von Datensätzen problemlos möglich ist.

Die einfachste Möglichkeit zur Verwendung der Bulk-API besteht darin, sie für das Verarbeiten von Datensätzen in Data Loader über CSV-Dateien zu aktivieren. Wenn Sie den Data Loader verwenden, umgehen Sie die Notwendigkeit, Ihre eigene Clientanwendung zu schreiben.

Einsatzmöglichkeiten der Metadaten-API

Verwenden Sie die Metadaten-API zum Abrufen, Bereitstellen, Erstellen, Aktualisieren oder Löschen von Anpassungen für Ihre Organisation. Der häufigste Verwendungszweck besteht in der Migration von Änderungen aus einer Sandbox- oder Testorganisation in die Produktionsumgebung. Die Metadaten-API ist für die Verwaltung von Anpassungen und zur Erstellung von Tools gedacht, die zur Verwaltung des Metadatenmodells, nicht der Daten selbst, dienen.

Die einfachste Methode für den Zugriff auf die Funktionen in der Metadaten-API besteht in der Verwendung der Salesforce Extensions für Visual Studio Code oder des Ant Migration Tools. Beide Tools wurden auf Grundlage der Metadaten-API erstellt und verwenden die Standardtools, um die Arbeit mit der Metadaten-API zu vereinfachen.
  • Die Salesforce Extensions für Visual Studio Code bieten im schlanken, erweiterbaren Visual Studio Code-Editor Tools für die Entwicklung auf der Salesforce-Plattform. Diese bieten Funktionen für das Arbeiten mit Entwicklungsorganisationen (Test-, Sandbox- und Development Edition-Organisationen), Apex, Aura-Komponenten und Visualforce.
  • Das Ant Migration Tool ist ideal, wenn Sie ein Skript oder die Befehlszeile verwenden, um Metadaten zwischen einem lokalen Verzeichnis und einer Salesforce-Organisation zu verschieben.

Einsatzmöglichkeiten der Streaming-API

Verwenden Sie die Streaming-API, um nahezu in Echtzeit Datenstreams zu empfangen, die auf Änderungen in Salesforce-Datensätzen oder benutzerdefinierten Nutzlasten basieren. Bei Änderungen in Salesforce-Datensätzen veröffentlicht Salesforce Benachrichtigungen, sobald die Änderungen erfolgen. Bei benutzerdefinierten Benachrichtigungen können Sie Ereignisnachrichten veröffentlichen. Abonnenten können Benachrichtigungen mithilfe von CometD erhalten, einer Implementierung des Bayeux-Protokolls, die Push-Technologie simuliert. Clients können auch einige Ereignistypen mit Apex-Auslösern oder deklarativ mit dem Prozessgenerator und Flow Builder abonnieren.

Verwenden Sie die Art von Streaming-Ereignis, die Ihren Anforderungen entspricht.

PushTopic-Ereignis: Empfangen Sie Änderungen an Salesforce-Datensätzen auf der Basis einer SOQL-Abfrage, die Sie definieren. Die Benachrichtigungen beinhalten nur die Felder, die Sie in der SOQL-Abfrage angeben. Datenänderungserfassungs-Ereignis: Empfangen Sie Änderungen an Salesforce-Datensätzen mit allen geänderten Feldern. Die Datenänderungserfassung unterstützt mehr Standardobjekte als PushTopic-Ereignisse und bietet mehr Funktionen, wie etwa Header-Felder, die Informationen über die Änderung enthalten. Plattformereignis: Veröffentlichen und empfangen Sie benutzerdefinierte Nutzlasten mit einem vordefinierten Schema. Die Daten sind beliebige, von Ihnen definierte Daten, beispielsweise Geschäftsdaten wie etwa Auftragsinformationen. Geben Sie die zu sendenden Daten an, indem Sie ein Plattformereignis definieren. Abonnieren Sie einen Plattformereigniskanal, um Benachrichtigungen zu erhalten. Allgemeines Ereignis: Veröffentlichen und empfangen Sie beliebige Nutzlasten ohne vordefiniertes Schema.

Einsatzmöglichkeiten der Apex-REST-API

Verwenden Sie die Apex-REST-API, wenn Sie Ihre Apex-Klassen und -Methoden öffentlich zugänglich machen möchten, sodass externe Anwendungen über die REST-Architektur auf Ihren Code zugreifen können. Die Apex-REST-API unterstützt für die Autorisierung sowohl OAuth 2.0 als auch eine Sitzungs-ID.

Einsatzmöglichkeiten der Apex-SOAP-API

Verwenden Sie die Apex-SOAP-API, wenn Sie Apex-Methoden als SOAP-Web Service-APIs öffentlich zugänglich machen möchten, sodass externe Anwendungen über SOAP auf Ihren Code zugreifen können.

Die Apex-SOAP-API unterstützt für die Autorisierung sowohl OAuth 2.0 als auch eine Sitzungs-ID.

Einsatzmöglichkeiten der Tooling-API

Verwenden Sie die Tooling-API, um Salesforce-Metadaten mit anderen Systemen zu integrieren. Metadatentypen werden als sObjects zur Verfügung gestellt, sodass Sie bei komplexen Typen auch auf einzelne Komponenten zugreifen können. Dieser Zugriff auf Feldebene beschleunigt Operationen mit komplexen Metadatentypen. Sie können auch benutzerdefinierte Entwicklungstools für Force.com-Anwendungen erstellen. Mit der Tooling-API können Sie beispielsweise funktionierende Kopien von Apex-Klassen und -Auslösern sowie Visualforce-Seiten und -Komponenten verwalten und bereitstellen. Außerdem haben Sie damit die Möglichkeit, Prüfpunkte und Heap-Dump-Markierungen zu setzen, anonymen Apex-Code auszuführen und auf Informationen zur Protokollierung und Codeabdeckung zuzugreifen.

Sowohl REST als auch SOAP werden unterstützt.