Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Versi: 2.0.2
Mengakses data di akun Salesforce Anda. Menyisipkan, memperbarui, mengambil, dan membuat kueri data.
Konten ini memberikan referensi untuk mengonfigurasi dan menggunakan ekstensi ini.
Prasyarat
Konten ini memberikan referensi untuk mengonfigurasi dan menggunakan ekstensi ini. Sebelum menggunakan ekstensi dari proxy API menggunakan kebijakan ExtensionCallout, Anda harus:
Buat pasangan sertifikasi atau kunci pribadi x509 RSA.
Anda akan menggunakan kunci pribadi (.key) sebagai kredensial saat mengonfigurasi ekstensi. Anda akan menggunakan file sertifikat (.crt) saat membuat aplikasi terhubung yang akan memberikan akses ekstensi ke Salesforce.
openssl req -x509 -sha256 -nodes -days 36500 -newkey rsa:2048 -keyout salesforce.key -out salesforce.crtSiapkan aplikasi yang terhubung.
Aplikasi yang terhubung dengan Salesforce akan memberikan akses untuk ekstensi Salesforce. Lihat petunjuk untuk menyiapkan aplikasi.
Dapatkan kunci konsumen untuk aplikasi yang terhubung. Ekstensi akan menggunakan kunci ini saat melakukan autentikasi dengan aplikasi.
- Di penyiapan Salesforce, di navigasi kiri, buka Aplikasi > Pengelola Aplikasi.
- Dalam daftar, temukan aplikasi terhubung yang Anda buat.
- Dari drop-down di sebelah kanan pada baris aplikasi, klik Lihat.
- Di bagian API (Enable OAuth Settings), temukan Consumer Key dan salin nilainya ke tempat yang aman untuk digunakan saat mengonfigurasi ekstensi.
Menyiapkan aplikasi terhubung untuk akses oleh ekstensi
Sebelum ekstensi Salesforce dapat mengakses Salesforce, Anda harus membuat aplikasi yang terhubung di Salesforce agar ekstensi dapat terhubung dengan Salesforce.
Di Salesforce, aplikasi terhubung menyediakan cara bagi aplikasi eksternal untuk terhubung ke Salesforce melalui API.
Untuk menyiapkan aplikasi yang terhubung
- Login ke Salesforce.
- Klik ikon roda gigi di kanan atas, lalu klik Penyiapan.
- Di navigasi sebelah kiri, luaskan Aplikasi > Pengelola Aplikasi.
- Di halaman Pengelola Aplikasi, klik Aplikasi Terhubung Baru.
- Di bagian Informasi Dasar, isi kolom yang wajib diisi. Nilai ini untuk pembukuan; tidak digunakan oleh ekstensi.
- Di bagian API (Aktifkan Setelan OAuth), centang kotak Aktifkan Setelan OAuth.
- Meskipun tidak digunakan oleh ekstensi, masukkan URL Callback. Anda dapat menggunakan
http://localhost/atau host placeholder lainnya. - Centang kotak Gunakan tanda tangan digital.
- Di bagian Gunakan tanda tangan digital, klik Pilih File untuk menemukan dan mengupload
salesforce.crtyang Anda buat sebelumnya. - Di bagian Cakupan OAuth yang Dipilih, tambahkan cakupan berikut agar berada di bagian Cakupan OAuth yang Dipilih:
- Mengakses dan mengelola data (api) Anda
- Menjalankan permintaan atas nama Anda kapan saja (refresh_token, offline_access)
- Klik Simpan. Jika ada error, Anda mungkin perlu membuat ulang dan mengupload file
salesforce.crt. - Di halaman aplikasi yang muncul, klik Kelola.
- Di halaman Pengelola Aplikasi untuk aplikasi yang baru saja Anda buat, klik Edit Kebijakan.
- Di bagian Kebijakan OAuth, klik drop-down Pengguna yang Diizinkan, lalu klik Pengguna yang disetujui admin telah diotorisasi.
- Klik Simpan.
- Kembali ke halaman aplikasi, di bagian Profil, klik Kelola Profil.
Di halaman Penetapan Profil Aplikasi, centang kotak untuk profil pengguna yang dapat menggunakan aplikasi ini.
Pastikan untuk memilih profil yang sesuai dengan pengguna yang nama penggunanya akan Anda gunakan saat mengonfigurasi ekstensi. Pastikan juga bahwa setidaknya pengguna Administrator Sistem memiliki akses ke aplikasi ini.
Anda dapat melihat setelan profil untuk pengguna di Salesforce. Di area Penyiapan, luaskan Pengguna > Pengguna, temukan pengguna yang akan diwakili oleh ekstensi, lalu temukan profilnya di kolom Profil.
Klik Simpan.
Tentang Salesforce
Salesforce adalah platform pengelolaan hubungan pelanggan (CRM). Customer Relationship Management membantu perusahaan memahami kebutuhan pelanggan dan menyelesaikan masalah dengan mengelola informasi dan interaksi pelanggan secara lebih baik — semuanya di satu platform yang selalu dapat diakses dari desktop atau perangkat apa pun.
Tindakan
insert
Menyisipkan data sebagai jenis sObject.
Sintaksis
<Action>insert</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"records":[ records-to-insert ],
"allOrNone": true | false
}]]></Input>
Contoh
<Action>insert</Action>
<Input><![CDATA[{
"sobject": "Account",
"records":[
{ "Name": "MyAccountName" }
],
"allOrNone": true
}]]></Input>
Parameter permintaan
| Parameter | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| sobject | Jenis sObject dari data yang akan disisipkan. | String | Tidak ada. | Ya. |
| record | Array rekaman sObject dalam JSON. Maksimum: 1000. | Array | Tidak ada. | Ya. |
| allOrNone | true untuk menggagalkan seluruh update jika ada bagian update yang gagal. |
Boolean | false | Tidak. |
Respons
Array results dengan hasil dari operasi penyisipan.
{
results: [
{ id: '0011U00000LQ76KQAT', success: true, errors: [] },
{ id: '0011U00000LQ76LQAT', success: true, errors: [] }
]
}
| Properti | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| results[*].id | ID sObject yang dibuat untuk rekaman baru. | String | Tidak ada. | Ya. |
| results[*].success | true jika penyisipan data tersebut berhasil. |
Boolean | Tidak ada. | Ya. |
| results[*].errors | Array error, jika ada, yang terjadi selama eksekusi. | Array | Tidak ada. | Ya. |
update
Perbarui data Salesforce.
Sintaksis
<Action>update</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"records": [ records-to-update ],
"allOrNone": true | false
}]]></Input>
Contoh
<Action>update</Action>
<Input><![CDATA[{
"sobject": "Account",
"records":[
{
"id":"0011U00000LQ76KQAT",
"Name": "MyNewAccountName"
}
],
"allOrNone": true
}]]></Input>
Parameter permintaan
| Parameter | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| sobject | Jenis sObject catatan yang akan diperbarui. | String | Tidak ada. | Ya. |
| record | Array rekaman sObject dalam JSON. Setiap data yang akan diperbarui harus menyertakan nilai ID data. Maksimum: 1000. | Array | Tidak ada. | Ya. |
| allOrNone | true untuk menggagalkan seluruh update jika ada bagian update yang gagal. |
Boolean | false | Tidak. |
Respons
Array results yang berisi hasil dari pembaruan.
{
results: [
{ id: '0011U00000LQ76KQAT', success: true, errors: [] },
{ id: '0011U00000LQ76LQAT', success: true, errors: [] }
]
}
| Parameter | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| results[*].id | ID sObject yang dibuat untuk data yang diperbarui. | String | Tidak ada. | Ya. |
| results[*].success | true jika penyisipan data tersebut berhasil. |
Boolean | Tidak ada. | Ya. |
| results[*].errors | Array error, jika ada, yang terjadi selama eksekusi. | Array | Tidak ada. | Ya. |
ambil
Mengambil data sebagai sObject berdasarkan ID-nya. Menampilkan semua kolom jenis sObject.
Sintaksis
<Action>retrieve</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"ids":[ IDs-of-records-to-retrieve ]
}]]></Input>
Contoh
<Action>retrieve</Action>
<Input><![CDATA[{
"sobject": "Account",
"ids":["0011U00000LQ76KQAT"]
}]]></Input>
Parameter permintaan
| Parameter | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| sobject | Jenis sObject dari data yang akan diambil. | String | Tidak ada. | Ya. |
| ids | Array rekaman ID sObject yang akan diambil. Maksimum: 1000. | Array | Tidak ada. | Ya. |
| allOrNone | true untuk menggagalkan seluruh operasi jika ada bagian permintaan yang gagal. |
Boolean | false | Tidak. |
Respons
Array records sObject yang direpresentasikan sebagai JSON. Perhatikan bahwa semua properti objek disertakan dalam JSON, meskipun nilai properti adalah null.
{
records: [
{ sobject-json },
{ sobject-json }
]
}
querySOQL
Kueri Salesforce.com menggunakan Salesforce Object Query Language (SOQL).
Sintaksis
<Action>querySOQL</Action>
<Input><![CDATA[{
"soql": soql-query-statement
}]]></Input>
Contoh
<Action>querySOQL</Action>
<Input><![CDATA[{
"soql": "SELECT Id, Name FROM Account"
}]]></Input>
Parameter permintaan
| Parameter | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| soql | Pernyataan SOQL untuk membuat kueri. | String | Tidak ada. | Ya. |
Respons
Hasil kueri.
{
totalSize: 2,
records: [
{
attributes: { attributes-of-record },
Id: '0011U00000LQ76KQAT',
Name: 'AccountName1'
},
{
attributes: { attributes-of-record },
Id: '0011U00000LQ76LQAT',
Name: 'AccountName2'
}
],
done: true
}
| Parameter | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| totalSize | Jumlah kumpulan data yang ditampilkan oleh kueri. | Bilangan bulat | Tidak ada. | Ya. |
| record | Array rekaman yang ditampilkan sebagai sObject dalam JSON. Maksimum: 1000. | Array | Tidak ada. | Ya. |
| selesai | true jika operasi kueri selesai. |
Boolean | Tidak ada. | Ya. |
list
Mencantumkan data Salesforce.com. Menampilkan semua kolom jenis sObject yang ditentukan.
Sintaksis
<Action>list</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"limit": max-number-of-records,
"offset": record-index-at-which-to-begin-response-set
}]]></Input>
Contoh
<Action>list</Action>
<Input><![CDATA[{
"sobject": "Account",
"limit": 1000,
"offset": 0
}]]></Input>
Parameter permintaan
| Parameter | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| sobject | Jenis sObject dari data yang akan dicantumkan. | String | Tidak ada. | Ya. |
| batas | Jumlah maksimum record yang akan ditampilkan. | Bilangan bulat | 1000 | Tidak. |
| offset | Offset untuk catatan yang akan dicantumkan. | Bilangan bulat | 0 |
Tidak. |
Respons
Array records yang berisi sObject yang tercantum sebagai JSON.
{
records: [
{ sobject-json },
{ sobject-json }
]
}
del
Menghapus data dengan ID yang ditentukan.
Sintaksis
<Action>del</Action>
<Input><![CDATA[{
"sobject": records-sObject-type,
"ids":[ IDs-of-records-to-retrieve ]
}]]></Input>
Contoh
<Action>del</Action>
<Input><![CDATA[{
"sobject": "Account",
"ids":["0011U00000LQ76KQAT"]
}]]></Input>
Parameter permintaan
| Parameter | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| sobject | Jenis sObject dari data yang akan dihapus. | String | Tidak ada. | Ya. |
| ids | Array ID sObject untuk data yang akan dihapus. Maksimum: 1000. | Array | Tidak ada. | Ya. |
Respons
Array results yang berisi hasil operasi.
{
results:[
{ id: '0011U00000LQ76KQAT', success: true, errors: [] },
{ id: '0011U00000LQ76LQAT', success: true, errors: [] }
]
}
| Properti | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| results[*].id | ID sObject dari data yang ditentukan. | String | Tidak ada. | Ya. |
| results[*].success | true jika operasi berhasil untuk data. |
Boolean | Tidak ada. | Ya. |
| results[*].errors | Array error, jika ada, yang terjadi selama eksekusi. | Array | Tidak ada. | Ya. |
getAccessToken
Dapatkan token akses API Salesforce.com. Dapat digunakan untuk membuat kueri REST API.
Sintaksis
<Action>getAccessToken</Action>
<Input><![CDATA[{}]]></Input>
Parameter permintaan
Tidak ada.
Respons
Token akses dalam JSON.
{
"accessToken":"00D1U0000014m3hqswvoM22I5GTw9EJrztlZ8eSSka88Q",
"scope":"api",
"instanceUrl": "https://na85.salesforce.com",
"id": "https://login.salesforce.com/id/00D1U0004564mutUAA/0051U43214qecVQAQ",
"tokenType": "Bearer"
}
| Properti | Deskripsi | Jenis | Default | Wajib |
|---|---|---|---|---|
| accessToken | Token akses. | String | Tidak ada. | Ya. |
| cakupan | Cakupan yang menyediakan akses token. | String | Tidak ada. | Ya. |
| instanceUrl | URL untuk instance yang digunakan oleh org Salesforce. | String | Tidak ada. | Ya. |
| id | ID aplikasi yang terhubung. | String | Tidak ada. | Ya. |
| tokenType | Jenis untuk token akses. | String | Bearer | Ya. |
Referensi Konfigurasi
Gunakan hal berikut saat Anda mengonfigurasi dan men-deploy ekstensi ini untuk digunakan di proxy API.
Properti ekstensi umum
Properti berikut ada untuk setiap ekstensi.
| Properti | Deskripsi | Default | Wajib |
|---|---|---|---|
name |
Nama yang Anda berikan pada konfigurasi ekstensi ini. | Tidak ada | Ya |
packageName |
Nama paket ekstensi seperti yang diberikan oleh Apigee Edge. | Tidak ada | Ya |
version |
Nomor versi untuk paket ekstensi tempat Anda mengonfigurasi ekstensi. | Tidak ada | Ya |
configuration |
Nilai konfigurasi khusus untuk ekstensi yang Anda tambahkan. Lihat Properti untuk paket ekstensi ini | Tidak ada | Ya |
Properti untuk paket ekstensi ini
Tentukan nilai untuk properti konfigurasi berikut yang khusus untuk ekstensi ini.
| Properti | Deskripsi | Default | Wajib |
|---|---|---|---|
| URL server otorisasi | URL yang akan digunakan saat mendapatkan otorisasi dari Salesforce. Biasanya, ini adalah https://login.salesforce.com |
Tidak ada. | Ya. |
| Kunci konsumen aplikasi terhubung | Kunci konsumen yang disediakan oleh Salesforce untuk aplikasi terhubung yang Anda buat. Lihat petunjuk di bagian Prasyarat untuk mengambil kunci konsumen Anda. | Tidak ada. | Ya. |
| Kredensial | Jika dimasukkan di konsol Apigee Edge, ini adalah konten file salesforce.key yang Anda buat dalam langkah-langkah tersebut. Saat dikirim menggunakan Management API, nilai ini adalah nilai berenkode base64 yang dihasilkan dari file salesforce.key. | Tidak ada. | Ya. |
| Nama pengguna Salesforce | Nama pengguna yang terkait dengan aplikasi terhubung yang Anda buat. Ekstensi Salesforce akan menggunakan ini untuk mendapatkan otorisasi dari Salesforce. | Tidak ada. | Ya. |