Sie sehen sich die Dokumentation zu Apigee Edge an.
Sehen Sie sich die Apigee X-Dokumentation an. info
Version: 1.0.5
Sie können auf Daten in Ihrem Salesforce-Konto zugreifen. Daten einfügen, aktualisieren, abrufen und abfragen
Dieser Artikel enthält eine Referenz zum Konfigurieren und Verwenden dieser Erweiterung.
Vorbereitung
Dieser Artikel enthält eine Referenz zum Konfigurieren und Verwenden dieser Erweiterung. Bevor Sie die Erweiterung über einen API-Proxy mit der ExtensionCallout-Richtlinie verwenden können, müssen Sie Folgendes tun:
Erstellen Sie ein RSA-x509-Paar aus privatem Schlüssel und Zertifizierung.
Sie verwenden den privaten Schlüssel (.key) als Anmeldedaten, wenn Sie die Erweiterung konfigurieren. Sie verwenden die Zertifikatsdatei (.crt), wenn Sie eine verbundene App erstellen, die der Erweiterung Zugriff auf Salesforce gewährt.
openssl req -x509 -sha256 -nodes -days 36500 -newkey rsa:2048 -keyout salesforce.key -out salesforce.crt
Richten Sie eine verbundene App ein.
Eine verbundene Salesforce-Anwendung gewährt der Salesforce-Erweiterung Zugriff. Eine Anleitung zur Einrichtung der App finden Sie unten.
Rufen Sie den Consumer-Key für die verbundene Anwendung ab. Die Erweiterung verwendet diesen bei der Authentifizierung bei der Anwendung.
- Klicken Sie in der Salesforce-Einrichtung im linken Navigationsbereich auf Apps > App Manager.
- Suchen Sie in der Liste nach der verbundenen App, die Sie erstellt haben.
- Klicken Sie im Drop-down-Menü rechts in der Zeile der Anwendung auf Anzeigen.
- Suchen Sie unter API (OAuth-Einstellungen aktivieren) den Consumer-Key und kopieren Sie den Wert an einen sicheren Ort, um ihn bei der Konfiguration der Erweiterung zu verwenden.
Verbundene App für den Zugriff durch die Erweiterung einrichten
Bevor die Salesforce-Erweiterung auf Salesforce zugreifen kann, müssen Sie eine verbundene Salesforce-App erstellen, über die die Erweiterung eine Verbindung zu Salesforce herstellen kann.
In Salesforce ermöglicht eine verbundene Anwendung externen Anwendungen, über APIs eine Verbindung zu Salesforce herzustellen.
Verbundene App einrichten
- Melden Sie sich bei Salesforce an.
- Klicken Sie rechts oben auf das Zahnradsymbol und dann auf Einrichten.
- Maximieren Sie in der Navigationsleiste links Apps > App-Manager.
- Klicken Sie auf der Seite App-Manager auf Neue verbundene App.
- Füllen Sie die Felder unter Grundlegende Informationen aus. Die Werte dienen nur der Buchhaltung und werden nicht von der Erweiterung verwendet.
- Klicken Sie unter API (OAuth-Einstellungen aktivieren) das Kästchen OAuth-Einstellungen aktivieren an.
- Obwohl sie von der Erweiterung nicht verwendet wird, geben Sie eine Callback-URL ein. Sie können
http://localhost/
oder einen anderen Platzhalterhost verwenden. - Klicken Sie das Kästchen Digitale Signaturen verwenden an.
- Klicken Sie unter Digitale Signaturen verwenden auf Datei auswählen, um die zuvor generierte Datei
salesforce.crt
zu suchen und hochzuladen. - Fügen Sie im Abschnitt Ausgewählte OAuth-Bereiche Folgendes hinzu, damit sie sich unter Ausgewählte OAuth-Bereiche befinden:
- Daten aufrufen und verwalten (api)
- Anfragen jederzeit in Ihrem Namen ausführen (refresh_token, offline_access)
- Klicken Sie auf Speichern. Falls Fehler auftreten, müssen Sie die Datei
salesforce.crt
möglicherweise neu generieren und hochladen. - Klicken Sie auf der resultierenden Anwendungsseite auf Verwalten.
- Klicken Sie auf der Seite „App Manager“ für die gerade erstellte App auf Richtlinien bearbeiten.
- Klicken Sie unter OAuth-Richtlinien auf das Drop-down-Menü Zulässige Nutzer und dann auf Vom Administrator genehmigte Nutzer sind vorautorisiert.
- Klicken Sie auf Speichern.
- Kehren Sie zur Seite „App“ unter Profile zurück und klicken Sie auf Profile verwalten.
Klicken Sie auf der Seite Anwendungsprofilzuweisung auf die Kästchen für die Nutzerprofile, die diese Anwendung verwenden können.
Wählen Sie ein Profil aus, das dem Nutzer entspricht, dessen Nutzernamen Sie bei der Konfiguration der Erweiterung verwenden. Achten Sie außerdem darauf, dass mindestens Nutzer mit Berechtigungen eines Systemadministrators Zugriff auf diese Anwendung haben.
Sie können die Profileinstellung für den Nutzer in Salesforce aufrufen. Maximieren Sie im Bereich Einrichtung die Option Nutzer > Nutzer, suchen Sie den Nutzer, den die Erweiterung repräsentieren soll, und suchen Sie dann in der Spalte Profil nach seinem Profil.
Klicken Sie auf Speichern.
Über Salesforce
Salesforce ist eine CRM-Plattform (Customer-Relationship-Management). Das Customer-Relationship-Management hilft Unternehmen, die Anforderungen ihrer Kunden zu verstehen und Probleme zu lösen, indem die Kundendaten und Interaktionen besser verwaltet werden – alles auf einer einzigen Plattform, die immer von jedem Computer oder Gerät aus zugänglich ist.
Aktionen
insert
Fügen Sie Einträge als sObject-Typen ein.
Syntax
<Action>insert</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"records":[ records-to-insert ],
"allOrNone": true | false
}]]></Input>
Beispiel
<Action>insert</Action>
<Input><![CDATA[{
"sobject": "Account",
"records":[
{ "Name": "MyAccountName" }
],
"allOrNone": true
}]]></Input>
Anfrageparameter
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
sobject | Der sObject-Typ der einzufügenden Einträge. | String | Keine. | Ja. |
Aufzeichnungen | Array von sObject-Einträgen in JSON. Maximal: 1.000. | Array | Keine. | Ja. |
allOrNone | true , damit das gesamte Update fehlschlägt, wenn ein Teil des Updates fehlschlägt. |
Boolesch | falsch | Nein. |
Antwort
Ein results
-Array mit den Ergebnissen des Insert-Vorgangs.
{
results: [
{ id: '0011U00000LQ76KQAT', success: true, errors: [] },
{ id: '0011U00000LQ76LQAT', success: true, errors: [] }
]
}
Attribut | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
results[*].id | Die sObject-ID, die für den neuen Datensatz generiert wurde. | String | Keine. | Ja. |
results[*].success | true , wenn das Einfügen des Datensatzes erfolgreich war. |
Boolesch | Keine. | Ja. |
results[*].errors | Array mit Fehlern, die während der Ausführung erkannt wurden. | Array | Keine. | Ja. |
update
Salesforce-Datensätze aktualisieren
Syntax
<Action>update</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"records": [ records-to-update ],
"allOrNone": true | false
}]]></Input>
Beispiel
<Action>update</Action>
<Input><![CDATA[{
"sobject": "Account",
"records":[
{
"id":"0011U00000LQ76KQAT",
"Name": "MyNewAccountName"
}
],
"allOrNone": true
}]]></Input>
Anfrageparameter
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
sobject | Der sObject-Typ der zu aktualisierenden Einträge. | String | Keine. | Ja. |
Aufzeichnungen | Array von sObject-Einträgen im JSON-Format. Jeder zu aktualisierende Datensatz muss den ID-Wert des Datensatzes enthalten. Maximal: 1.000. | Array | Keine. | Ja. |
allOrNone | true , damit das gesamte Update fehlschlägt, wenn ein Teil des Updates fehlschlägt. |
Boolesch | falsch | Nein. |
Antwort
Ein results
-Array mit Ergebnissen der Aktualisierung.
{
results: [
{ id: '0011U00000LQ76KQAT', success: true, errors: [] },
{ id: '0011U00000LQ76LQAT', success: true, errors: [] }
]
}
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
results[*].id | Die sObject-ID, die für den aktualisierten Datensatz generiert wurde. | String | Keine. | Ja. |
results[*].success | true , wenn das Einfügen des Datensatzes erfolgreich war. |
Boolesch | Keine. | Ja. |
results[*].errors | Array mit Fehlern, die während der Ausführung erkannt wurden. | Array | Keine. | Ja. |
retrieve
Datensätze als sObjects anhand ihrer IDs abrufen Gibt alle Felder des Typs „sObject“ zurück.
Syntax
<Action>retrieve</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"ids":[ IDs-of-records-to-retrieve ]
}]]></Input>
Beispiel
<Action>retrieve</Action>
<Input><![CDATA[{
"sobject": "Account",
"ids":["0011U00000LQ76KQAT"]
}]]></Input>
Anfrageparameter
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
sobject | Der sObject-Typ der abzurufenden Einträge. | String | Keine. | Ja. |
ids | Array von sObject-IDs, die abgerufen werden sollen. Maximal: 1.000. | Array | Keine. | Ja. |
allOrNone | true , um den gesamten Vorgang zu beenden, wenn ein Teil der Anfrage fehlschlägt. |
Boolesch | falsch | Nein. |
Antwort
Ein records
-Array von sObjects, die als JSON dargestellt werden. Hinweis: Alle Eigenschaften der Objekte sind im JSON-Format enthalten, auch wenn der Attributwert null ist.
{
records: [
{ sobject-json },
{ sobject-json }
]
}
querySOQL
Salesforce.com mit der Salesforce Object Query Language (SOQL) abfragen
Syntax
<Action>querySOQL</Action>
<Input><![CDATA[{
"soql": soql-query-statement
}]]></Input>
Beispiel
<Action>querySOQL</Action>
<Input><![CDATA[{
"soql": "SELECT Id, Name FROM Account"
}]]></Input>
Anfrageparameter
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
soql | SOQL-Abfrageanweisung. | String | Keine. | Ja. |
Antwort
Ergebnisse der Abfrage.
{
totalSize: 2,
records: [
{
attributes: { attributes-of-record },
Id: '0011U00000LQ76KQAT',
Name: 'AccountName1'
},
{
attributes: { attributes-of-record },
Id: '0011U00000LQ76LQAT',
Name: 'AccountName2'
}
],
done: true
}
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
totalSize | Anzahl der von der Abfrage zurückgegebenen Einträge. | Ganzzahl | Keine. | Ja. |
Aufzeichnungen | Array der zurückgegebenen Einträge als sObjects in JSON. Maximal: 1.000. | Array | Keine. | Ja. |
Fertig | true , wenn der Abfragevorgang abgeschlossen wurde. |
Boolesch | Keine. | Ja. |
list
Salesforce.com-Datensätze auflisten Gibt alle Felder des angegebenen sObject-Typs zurück.
Syntax
<Action>list</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"limit": max-number-of-records,
"offset": record-index-at-which-to-begin-response-set
}]]></Input>
Beispiel
<Action>list</Action>
<Input><![CDATA[{
"sobject": "Account",
"limit": 1000,
"offset": 0
}]]></Input>
Anfrageparameter
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
sobject | Der sObject-Typ der zu listenden Einträge. | String | Keine. | Ja. |
Limit | Maximale Anzahl der zurückzugebenden Einträge. | Ganzzahl | 1000 | Nein. |
kompensiert | Offset für die zu listenden Einträge. | Ganzzahl | 0 |
Nein. |
Antwort
Ein records
-Array mit aufgeführten sObjects als JSON.
{
records: [
{ sobject-json },
{ sobject-json }
]
}
CE
Löschen Sie Einträge mit den angegebenen IDs.
Syntax
<Action>del</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"ids":[ IDs-of-records-to-retrieve ]
}]]></Input>
Beispiel
<Action>del</Action>
<Input><![CDATA[{
"sobject": "Account",
"ids":["0011U00000LQ76KQAT"]
}]]></Input>
Anfrageparameter
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
sobject | Der sObject-Typ der zu löschenden Einträge. | String | Keine. | Ja. |
ids | Array von sObject-IDs für zu löschende Einträge. Maximal: 1.000. | Array | Keine. | Ja. |
Antwort
Ein results
-Array mit den Ergebnissen des Vorgangs.
{
results:[
{ id: '0011U00000LQ76KQAT', success: true, errors: [] },
{ id: '0011U00000LQ76LQAT', success: true, errors: [] }
]
}
Attribut | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
results[*].id | Die sObject-ID des angegebenen Datensatzes. | String | Keine. | Ja. |
results[*].success | true , wenn der Vorgang für den Eintrag erfolgreich war. |
Boolesch | Keine. | Ja. |
results[*].errors | Array mit Fehlern, die während der Ausführung erkannt wurden. | Array | Keine. | Ja. |
getAccessToken
Rufen Sie das Salesforce.com API-Zugriffstoken ab. Kann zum Abfragen von REST APIs verwendet werden.
Syntax
<Action>getAccessToken</Action>
<Input><![CDATA[{}]]></Input>
Anfrageparameter
Keine.
Antwort
Das Zugriffstoken im JSON-Format.
{
"accessToken":"00D1U0000014m3hqswvoM22I5GTw9EJrztlZ8eSSka88Q",
"scope":"api",
"instanceUrl": "https://na85.salesforce.com",
"id": "https://login.salesforce.com/id/00D1U0004564mutUAA/0051U43214qecVQAQ",
"tokenType": "Bearer"
}
Attribut | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
accessToken | Das Zugriffstoken. | String | Keine. | Ja. |
Bereich | Bereiche, in denen das Token Zugriff gewährt. | String | Keine. | Ja. |
instanceUrl | URL der Instanz, die von der Salesforce-Organisation verwendet wird. | String | Keine. | Ja. |
id | ID der verbundenen App. | String | Keine. | Ja. |
tokenType | Geben Sie den Typ für das Zugriffstoken an. | String | Träger | Ja. |
Konfigurationsreferenz
Beachten Sie Folgendes, wenn Sie diese Erweiterung für die Verwendung in API-Proxys konfigurieren und bereitstellen.
Gängige Erweiterungseigenschaften
Für jede Erweiterung sind die folgenden Eigenschaften vorhanden.
Attribut | Beschreibung | Standard | Erforderlich |
---|---|---|---|
name |
Der Name, den Sie dieser Konfiguration der Erweiterung zuweisen. | – | Ja |
packageName |
Name des Erweiterungspakets, wie von Apigee Edge angegeben. | – | Ja |
version |
Versionsnummer für das Erweiterungspaket, von dem Sie eine Erweiterung konfigurieren. | – | Ja |
configuration |
Konfigurationswert speziell für die Erweiterung, die Sie hinzufügen. Weitere Informationen finden Sie unter Eigenschaften für dieses Erweiterungspaket. | – | Ja |
Properties für dieses Erweiterungspaket
Geben Sie Werte für die folgenden Konfigurationseigenschaften an, die für diese Erweiterung spezifisch sind.
Attribut | Beschreibung | Standard | Erforderlich |
---|---|---|---|
URL des Autorisierungsservers | Die URL, die beim Abrufen der Autorisierung von Salesforce verwendet werden soll. Normalerweise ist dies https://login.salesforce.com . |
Keine. | Ja. |
Consumer-Key für verbundene App | Der von Salesforce bereitgestellte Consumer-Key für die verbundene App, die Sie erstellt haben. Eine Anleitung zum Abrufen des Kundenschlüssels findest du unter Voraussetzungen. | Keine. | Ja. |
Anmeldedaten | Wenn Sie diesen String in die Apigee Edge Console eingeben, entspricht er dem Inhalt der Datei „salesforce.key“, die Sie in den vorherigen Schritten generiert haben. Wenn er über die Verwaltungs-API gesendet wird, ist er ein Base64-codierter Wert, der aus der Datei „salesforce.key“ generiert wird. | Keine. | Ja. |
Nutzername des Salesforce-Nutzers | Der Nutzername, der mit der von Ihnen erstellten verbundenen App verknüpft ist. Die Salesforce-Erweiterung verwendet diese Informationen, um eine Autorisierung von Salesforce zu erhalten. | Keine. | Ja. |