Salesforce Uzantısı

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Sürüm: 2.0.2

Salesforce hesabınızdaki verilere erişme Verileri ekleme, güncelleme, alma ve sorgulama

Bu içerik, uzantının yapılandırılması ve kullanılmasıyla ilgili referans bilgiler sağlar.

Ön koşullar

Bu içerik, uzantının yapılandırılması ve kullanılmasıyla ilgili referans bilgiler sağlar. ExtensionCallout politikası kullanılarak bir API proxy'sinden uzantıyı kullanmadan önce şunları yapmanız gerekir:

  1. RSA x509 özel anahtarı veya sertifika çifti oluşturun.

    Uzantıyı yapılandırırken kimlik bilgisi olarak özel anahtarı (.key) kullanırsınız. Uzantıya Salesforce'a erişim izni verecek bağlı bir uygulama oluştururken sertifika (.crt) dosyasını kullanırsınız.

    openssl req -x509 -sha256 -nodes -days 36500 -newkey rsa:2048 -keyout salesforce.key -out salesforce.crt
    
    
  2. Bağlı bir uygulama ayarlayın.

    Salesforce'a bağlı bir uygulama, Salesforce uzantısına erişim sağlar. Uygulamayı kurma talimatlarına bakın.

  3. Bağlı uygulamanın tüketici anahtarını alın. Uzantı, uygulamayla kimlik doğrulaması yaparken bu anahtarı kullanır.

    1. Salesforce kurulumunda, soldaki gezinme bölümünde Uygulamalar > Uygulama Yöneticisi'ne gidin.
    2. Listede, oluşturduğunuz bağlı uygulamayı bulun.
    3. Uygulama satırının sağındaki açılır listeden Görüntüle'yi tıklayın.
    4. API (Enable OAuth Settings) bölümünde Consumer Key'i (Tüketici Anahtarı) bulun ve değerini uzantıyı yapılandırırken kullanmak üzere güvenli bir yere kopyalayın.

Uzantının erişebileceği bağlı bir uygulama ayarlama

Salesforce uzantısının Salesforce'a erişebilmesi için uzantının Salesforce ile bağlanabileceği bir Salesforce bağlı uygulaması oluşturmanız gerekir.

Salesforce'ta bağlı uygulama, harici uygulamaların API'ler aracılığıyla Salesforce'a bağlanmasını sağlar.

Bağlı uygulama oluşturmak için

  1. Salesforce'ta oturum açın.
  2. Sağ üstteki dişli simgesini, ardından Kurulum'u tıklayın.
  3. Soldaki gezinme bölümünde Uygulamalar > Uygulama Yöneticisi'ni genişletin.
  4. Uygulama Yöneticisi sayfasında Yeni Bağlı Uygulama'yı tıklayın.
  5. Temel Bilgiler bölümünde zorunlu alanları doldurun. Değerler muhasebe içindir ve uzantı tarafından kullanılmaz.
  6. API (OAuth Ayarlarını Etkinleştir) bölümünde OAuth Ayarlarını Etkinleştir onay kutusunu işaretleyin.
  7. Uzantı tarafından kullanılmasa da geri çağırma URL'si girin. http://localhost/ veya başka bir yer tutucu ana makine kullanabilirsiniz.
  8. Dijital imzaları kullan onay kutusunu işaretleyin.
  9. Dijital imzaları kullan bölümünde, daha önce oluşturduğunuz salesforce.crt dosyasını bulup yüklemek için Dosya Seç'i tıklayın.
  10. Seçilen OAuth Kapsamları bölümünde, aşağıdaki kapsamları Seçilen OAuth Kapsamları'nın altına ekleyin:
    • Verilerinize erişme ve verilerinizi yönetme (API)
    • İstediği zaman kendi adınıza istekte bulunma (refresh_token, offline_access)
  11. Kaydet'i tıklayın. Hata varsa salesforce.crt dosyasını yeniden oluşturup yüklemeniz gerekebilir.
  12. Açılan uygulama sayfasında Yönet'i tıklayın.
  13. Yeni oluşturduğunuz uygulamanın uygulama yöneticisi sayfasında Politikaları Düzenle'yi tıklayın.
  14. OAuth politikaları bölümünde İzin Verilen Kullanıcılar açılır listesini, ardından Yönetici tarafından onaylanan kullanıcılar önceden yetkilendirilir'i tıklayın.
  15. Kaydet'i tıklayın.
  16. Uygulama sayfasına geri dönün ve Profiller bölümünde Profilleri Yönet'i tıklayın.
  17. Uygulama Profili Atama sayfasında, bu uygulamayı kullanabilecek kullanıcı profillerinin onay kutularını işaretleyin.

    Uzantıyı yapılandırırken kullanıcı adını kullanacağınız kullanıcıya karşılık gelen bir profil seçtiğinizden emin olun. Ayrıca, en azından Sistem Yöneticisi kullanıcılarının bu uygulamaya erişebildiğinden emin olun.

    Kullanıcının profil ayarını Salesforce'ta görüntüleyebilirsiniz. Kurulum alanında Kullanıcılar > Kullanıcılar'ı genişletin, uzantının temsil edeceği kullanıcıyı bulun ve Profil sütununda kullanıcının profilini bulun.

  18. Kaydet'i tıklayın.

Salesforce hakkında

Salesforce, bir müşteri ilişkileri yönetimi (CRM) platformudur. Müşteri ilişkileri yönetimi, şirketlerin müşteri bilgilerini ve etkileşimlerini daha iyi yöneterek müşterilerinin ihtiyaçlarını anlamasına ve sorunları çözmesine yardımcı olur. Tüm bunlar, herhangi bir masaüstü bilgisayardan veya cihazdan her zaman erişilebilen tek bir platformda yapılır.

İşlemler

insert

Kayıtları sObject türleri olarak ekleyin.

Söz dizimi

<Action>insert</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "records":[ records-to-insert ],
  "allOrNone": true | false
}]]></Input>

Örnek

<Action>insert</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "records":[
    { "Name": "MyAccountName" }
  ],
  "allOrNone": true
}]]></Input>

İstek parametreleri

Parametre Açıklama Tür Varsayılan Zorunlu
sobject Eklenecek kayıtların sObject türü. Dize Yok. Evet.
kayıt JSON biçiminde sObject kayıtları dizisi. Maksimum: 1.000 Dizi Yok. Evet.
allOrNone Güncellemenin herhangi bir kısmı başarısız olursa güncellemenin tamamının başarısız olması için true. Boole yanlış Sıra

Yanıt

Ekleme işleminden elde edilen sonuçları içeren bir results dizisi.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
Mülk Açıklama Tür Varsayılan Zorunlu
results[*].id Yeni kayıt için oluşturulan sObject kimliği. Dize Yok. Evet.
results[*].success true kaydın eklenmesi başarılı olduysa. Boole Yok. Evet.
results[*].errors Yürütme sırasında yakalanan hataların dizisi (varsa). Dizi Yok. Evet.

update

Salesforce kayıtlarını güncelleyin.

Söz dizimi

<Action>update</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "records": [ records-to-update ],
  "allOrNone": true | false
}]]></Input>

Örnek

<Action>update</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "records":[
    {
      "id":"0011U00000LQ76KQAT",
      "Name": "MyNewAccountName"
    }
  ],
  "allOrNone": true
}]]></Input>

İstek parametreleri

Parametre Açıklama Tür Varsayılan Zorunlu
sobject Güncellenecek kayıtların sObject türü. Dize Yok. Evet.
kayıt JSON biçiminde sObject kayıtları dizisi. Güncellenecek her kayıt, kaydın kimlik değerini içermelidir. Maksimum: 1.000 Dizi Yok. Evet.
allOrNone Güncellemenin herhangi bir kısmı başarısız olursa güncellemenin tamamının başarısız olması için true. Boole yanlış Sıra

Yanıt

Güncellemeden elde edilen sonuçları içeren bir results dizisi.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
Parametre Açıklama Tür Varsayılan Zorunlu
results[*].id Güncellenen kayıt için oluşturulan sObject kimliği. Dize Yok. Evet.
results[*].success true kaydın eklenmesi başarılı olduysa. Boole Yok. Evet.
results[*].errors Yürütme sırasında yakalanan hataların dizisi (varsa). Dizi Yok. Evet.

al

Kayıtları kimliklerine göre sObject olarak alma. sObject türünün tüm alanlarını döndürür.

Söz dizimi

<Action>retrieve</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "ids":[ IDs-of-records-to-retrieve ]
}]]></Input>

Örnek

<Action>retrieve</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "ids":["0011U00000LQ76KQAT"]
}]]></Input>

İstek parametreleri

Parametre Açıklama Tür Varsayılan Zorunlu
sobject Alınacak kayıtların sObject türü. Dize Yok. Evet.
kimlikler Alınacak sObject kimlikleri kayıtlarının dizisi. Maksimum: 1.000 Dizi Yok. Evet.
allOrNone İsteğin herhangi bir bölümü başarısız olursa tüm işlemin başarısız olması için true. Boole yanlış Sıra

Yanıt

JSON olarak gösterilen bir records sObject dizisi. Nesnelerin tüm özelliklerinin, özellik değeri null olsa bile JSON'a dahil edildiğini unutmayın.

{
  records: [
    { sobject-json },
    { sobject-json }
  ]
}

querySOQL

Salesforce Nesne Sorgu Dili (SOQL)'ni kullanarak Salesforce.com'u sorgulayın.

Söz dizimi

<Action>querySOQL</Action>
<Input><![CDATA[{
  "soql": soql-query-statement
}]]></Input>

Örnek

<Action>querySOQL</Action>
<Input><![CDATA[{
  "soql": "SELECT Id, Name FROM Account"
}]]></Input>

İstek parametreleri

Parametre Açıklama Tür Varsayılan Zorunlu
soql Sorgu için kullanılacak SOQL ifadesi. Dize Yok. Evet.

Yanıt

Sorgunun sonuçları.

{
  totalSize: 2,
  records: [
    {
      attributes: { attributes-of-record },
      Id: '0011U00000LQ76KQAT',
      Name: 'AccountName1'
    },
    {
      attributes: { attributes-of-record },
      Id: '0011U00000LQ76LQAT',
      Name: 'AccountName2'
    }
  ],
  done: true
}
Parametre Açıklama Tür Varsayılan Zorunlu
totalSize Sorgu tarafından döndürülen kayıt sayısı. Tamsayı Yok. Evet.
kayıt JSON'da sObject olarak döndürülen kayıt dizisi. Maksimum: 1.000 Dizi Yok. Evet.
bitti Sorgu işlemi tamamlandıysa true. Boole Yok. Evet.

list

Salesforce.com kayıtlarını listeleyin. Belirtilen sObject türünün tüm alanlarını döndürür.

Söz dizimi

<Action>list</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "limit": max-number-of-records,
  "offset": record-index-at-which-to-begin-response-set
}]]></Input>

Örnek

<Action>list</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "limit": 1000,
  "offset": 0
}]]></Input>

İstek parametreleri

Parametre Açıklama Tür Varsayılan Zorunlu
sobject Listelenecek kayıtların sObject türü. Dize Yok. Evet.
sınır Döndürülecek maksimum kayıt sayısı. Tamsayı 1000 Sıra
telafi etmek Listelenecek kayıtlar için ofset. Tamsayı 0 Sıra

Yanıt

Listelenen sObject'leri JSON olarak içeren bir records dizisi.

{
  records: [
    { sobject-json },
    { sobject-json }
  ]
}

sil

Belirtilen kimliklere sahip kayıtları silin.

Söz dizimi

<Action>del</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "ids":[ IDs-of-records-to-retrieve ]
}]]></Input>

Örnek

<Action>del</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "ids":["0011U00000LQ76KQAT"]
}]]></Input>

İstek parametreleri

Parametre Açıklama Tür Varsayılan Zorunlu
sobject Silinecek kayıtların sObject türü. Dize Yok. Evet.
kimlikler Silinecek kayıtların sObject kimlikleri dizisi. Maksimum: 1.000 Dizi Yok. Evet.

Yanıt

İşlemin sonuçlarını içeren bir results dizisi.

{
  results:[
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
Mülk Açıklama Tür Varsayılan Zorunlu
results[*].id Belirtilen kaydın sObject kimliği. Dize Yok. Evet.
results[*].success true, işlem kayıtta başarılı olduysa. Boole Yok. Evet.
results[*].errors Yürütme sırasında yakalanan hataların dizisi (varsa). Dizi Yok. Evet.

getAccessToken

Salesforce.com API erişim jetonunu alın. REST API'lerini sorgulamak için kullanılabilir.

Söz dizimi

<Action>getAccessToken</Action>
<Input><![CDATA[{}]]></Input>

İstek parametreleri

Yok.

Yanıt

JSON biçimindeki erişim jetonu.

{
  "accessToken":"00D1U0000014m3hqswvoM22I5GTw9EJrztlZ8eSSka88Q",
  "scope":"api",
  "instanceUrl": "https://na85.salesforce.com",
  "id": "https://login.salesforce.com/id/00D1U0004564mutUAA/0051U43214qecVQAQ",
  "tokenType": "Bearer"
}
Mülk Açıklama Tür Varsayılan Zorunlu
accessToken Erişim jetonu. Dize Yok. Evet.
kapsam Jetonun erişim sağladığı kapsamlar. Dize Yok. Evet.
instanceUrl Salesforce kuruluşu tarafından kullanılan örneğin URL'si. Dize Yok. Evet.
id Bağlı uygulamanın kimliği. Dize Yok. Evet.
tokenType Erişim jetonunun türü. Dize Taşıyıcı Evet.

Yapılandırma Referansı

Bu uzantıyı API proxy'lerinde kullanılacak şekilde yapılandırıp dağıtırken aşağıdakileri kullanın.

Sık kullanılan uzantı özellikleri

Aşağıdaki özellikler her uzantı için mevcuttur.

Mülk Açıklama Varsayılan Zorunlu
name Uzantının bu yapılandırmasını verdiğiniz ad. Yok Evet
packageName Apigee Edge'in sağladığı uzantı paketinin adı. Yok Evet
version Uzantıyı yapılandırdığınız uzantı paketinin sürüm numarası. Yok Evet
configuration Eklediğiniz uzantıya özgü yapılandırma değeri. Bu uzantı paketinin özellikleri başlıklı makaleyi inceleyin Yok Evet

Bu uzantı paketinin özellikleri

Bu uzantıya özel aşağıdaki yapılandırma özelliklerinin değerlerini belirtin.

Mülk Açıklama Varsayılan Zorunlu
Yetkilendirme sunucusu URL'si Salesforce'tan yetkilendirme alırken kullanılacak URL. Bu süre genellikle https://login.salesforce.com Yok. Evet.
Bağlı uygulama tüketici anahtarı Oluşturduğunuz bağlı uygulama için Salesforce tarafından sağlanan tüketici anahtarı. Tüketici anahtarınızı almak için Ön koşullar bölümündeki talimatları inceleyin. Yok. Evet.
Kimlik bilgisi Apigee Edge konsoluna girildiğinde, bu, adımlarda oluşturduğunuz salesforce.key dosyasının içeriğidir. Yönetim API'si kullanılarak gönderildiğinde, salesforce.key dosyasından oluşturulan base64 kodlu bir değerdir. Yok. Evet.
Salesforce kullanıcısının kullanıcı adı Oluşturduğunuz bağlı uygulamayla ilişkilendirilmiş kullanıcı adı. Salesforce uzantısı, Salesforce'tan yetki almak için bunu kullanır. Yok. Evet.