Salesforce Uzantısı

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

Sürüm: 1.0.5

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

Bu içerikte, bu uzantıyı yapılandırma ve kullanmayla ilgili referanslar sağlanmaktadır.

Ön koşullar

Bu içerikte, bu uzantıyı yapılandırma ve kullanmayla ilgili referanslar sağlanmaktadır. ExtensionCallout politikasını kullanarak uzantıyı bir API proxy'sinden kullanmadan önce şunları yapmanız gerekir:

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

    Uzantıyı yapılandırırken kimlik bilgileri 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 oluşturun.

    Salesforce'a bağlı bir uygulama, Salesforce uzantısına erişim sağlar. Uygulamayı ayarlamayla ilgili talimatları aşağıda bulabilirsiniz.

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

    1. Salesforce kurulumunda, sol gezinme bölmesinde Uygulamalar > Uygulama Yöneticisi'ne gidin.
    2. Listede, oluşturduğunuz bağlı uygulamayı bulun.
    3. Uygulamanın satırının sağındaki açılır menüden Göster'i tıklayın.
    4. API (OAuth Ayarlarını Etkinleştir) bölümünde Consumer Key'i bulun ve uzantıyı yapılandırırken kullanabileceğiniz güvenli bir yere kopyalayın.

Uzantının erişmesi için bağlı bir uygulama oluşturma

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

Salesforce'ta bağlı uygulamalar, harici uygulamaların API'ler aracılığıyla Salesforce'a bağlanmasına olanak tanır.

Bağlı uygulama oluşturmak için

  1. Salesforce'a giriş yapın.
  2. Sağ üstteki dişli simgesini, ardından Kurulum'u tıklayın.
  3. Soldaki gezinme menüsü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. Bu 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 bir geri çağırma URL'si girin. http://localhost/ veya başka bir yer tutucu barındırma hizmetini kullanabilirsiniz.
  8. Dijital imzaları kullan onay kutusunu işaretleyin.
  9. Dijital imzaları kullan bölümünde Dosya seç'i tıklayarak daha önce oluşturduğunuz salesforce.crt dosyasını bulup yükleyin.
  10. Seçilen OAuth Kapsamları bölümünde, aşağıdakileri Seçilen OAuth Kapsamları altında olacak şekilde ekleyin:
    • Verilerinize erişme ve bu verileri yönetme (api)
    • İstediğiniz zaman sizin adınıza istek gönderebilir (refresh_token, offline_access)
  11. Kaydet'i tıklayın. Hata varsa salesforce.crt dosyasını yeniden oluşturmanız ve 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 menüsünü, ardından Yönetici onaylı kullanıcılar önceden yetkilendirilir'i tıklayın.
  15. Kaydet'i tıklayın.
  16. Uygulama sayfasına dönüp Profiller bölümünde Profilleri Yönet'i tıklayın.
  17. Uygulama Profili Atama sayfasında, bu uygulamayı kullanabilen kullanıcı profillerinin onay kutularını işaretleyin.

    Uzantıyı yapılandırırken kullanacağınız kullanıcı adına sahip 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 ardından 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 İlişkileri Yönetimi, şirketlerin müşteri bilgilerini ve etkileşimlerini daha iyi yöneterek müşterilerinin ihtiyaçlarını anlamalarına ve sorunları çözmelerine yardımcı olur. Tüm bunları her zaman herhangi bir masaüstü bilgisayardan veya cihazdan erişilebilen tek bir platformda yapar.

İş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 true tuşlarına basarak güncellemenin tamamını başarısız kılabilirsiniz. Boole yanlış Sıra

Yanıt

Ekle işleminin 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 Yeni kayıt için oluşturulan sObject kimliği. Dize Yok. Evet.
results[*].success true, söz konusu kaydın eklenmesi başarılı olduysa. Boole Yok. Evet.
results[*].errors Yürütme sırasında yakalanan hata 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 true tuşlarına basarak güncellemenin tamamını başarısız kılabilirsiniz. Boole yanlış Sıra

Yanıt

Güncelleme sonuçlarını 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, söz konusu kaydın eklenmesi başarılı olduysa. Boole Yok. Evet.
results[*].errors Yürütme sırasında yakalanan hata dizisi (varsa). Dizi Yok. Evet.

al

Kayıtları kimliklerine göre sObject olarak alın. 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 dizisi. Maksimum: 1.000. Dizi Yok. Evet.
allOrNone true isteğin herhangi bir bölümü başarısız olursa işlemin tamamının başarısız olması için. Boole yanlış Sıra

Yanıt

JSON olarak temsil edilen bir records sObject dizisi. Mülk değeri null olsa bile nesnelerin tüm özelliklerinin JSON'a dahil edildiğini unutmayın.

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

querySOQL

Salesforce Nesne Sorgu Dili'ni (SOQL) 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 sObjects 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
ofset Listelenecek kayıtların ofseti. Tamsayı 0 Sıra

Yanıt

Listelenen sObjects'i 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ıt için başarılıysa. Boole Yok. Evet.
results[*].errors Yürütme sırasında yakalanan hata dizisi (varsa). Dizi Yok. Evet.

getAccessToken

Salesforce.com API erişim jetonunu alın. REST API'leri 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 jetonu için tür. Dize Taşıyıcı Evet.

Yapılandırma Referansı

Bu uzantıyı API proxy'lerinde kullanılmak üzere yapılandırırken ve dağıtırken aşağıdakileri kullanın.

Ortak 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ı paketine ait özellikler

Bu uzantıya özgü aşağıdaki yapılandırma özellikleri için değerler belirtin.

Mülk Açıklama Varsayılan Zorunlu
Yetkilendirme sunucusu URL'si Salesforce'tan yetki alırken kullanılacak URL. Bu 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, yukarıdaki adımlarda oluşturduğunuz salesforce.key dosyasının içeriğidir. Yönetim API'si üzerinden 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ı uygulama ile ilişkili kullanıcı adı. Salesforce uzantısı, Salesforce'tan yetki almak için bunu kullanır. Yok. Evet.