Salesforce Bulk API 2.0, Salesforce sistemine büyük hacimli verileri hızlı ve verimli biçimde aktarmak için kullanılan bir REST servisidir. Günlük 100 milyon kayıt limitiyle toplu insert, update, delete ve upsert işlemlerini yönetir. Önceki sürüm olan Bulk API v1’e kıyasla çok daha az adımla aynı sonucu verir: manuel batch bölümleme gerekmez, OAuth 2.0 ile kimlik doğrulama doğrudan gerçekleşir ve dosya bölümleme otomatik olarak yapılır. Bu yazıda Salesforce Bulk API 2.0’ın ne olduğunu, v1 ile farkını ve Postman üzerinden adım adım nasıl kullanıldığını ele alıyoruz.
İçindekiler
Salesforce, dünya genelinde 150.000’den fazla büyük-küçük ölçekli şirket tarafından kullanılan bulut tabanlı bir CRM platformudur. Platform; müşteri ilişkileri yönetimi, satış otomasyonu ve pazarlama süreçleri için kapsamlı araçlar sunar. SAP ve Salesforce entegrasyonu gerçekleştiren kurumlar için iki platform arasında büyük veri transferi kaçınılmaz hale gelir.
Salesforce, geliştiricilere entegrasyon kolaylığı sağlamak amacıyla SOAP ve REST tabanlı çeşitli API’ler sunar. Bu API’ler arasında büyük veri aktarımı için öne çıkan çözüm Bulk API’dir. Bulk API, standart REST API’nin kayıt başına çağrı sınırlamalarını aşarak yüz binlerce hatta milyonlarca kaydı tek bir iş akışında işlemenizi sağlar.
Salesforce Bulk API 2.0, büyük veri kümelerini Salesforce sistemine yüklemek veya sistemden çekmek için tasarlanmış REST tabanlı bir servistir. Veriler yalnızca CSV formatında gönderilir; bu tercih, XML veya JSON gibi formatlara kıyasla fazladan meta veri içermediğinden büyük dosyalarda belirgin bir boyut tasarrufu sağlar.
Bulk API 2.0’ın üç temel özelliği onu v1’den ayırır:
OAuth 2.0 Desteği: Bulk API 2.0, diğer Salesforce REST API’leri gibi OAuth akışlarının tamamını destekler. Ayrı bir SOAP çağrısıyla session token almak gerekmez; kimlik doğrulama süreci standart OAuth 2.0 akışıyla tek adımda tamamlanır.
Otomatik Dosya Bölümleme: Bulk API v1’de gönderilen büyük dosyaları batch’lere bölmek geliştiricinin sorumluluğundaydı ve karmaşık hata yönetimi gerektiriyordu. Bulk API 2.0’da bu işlem otomatik olarak yapılır. Büyük CSV dosyasını yüklersiniz, sistem arka planda optimum batch boyutlarına böler ve işler.
Günlük Kayıt Limiti: Bulk API 2.0’da limitler job bazlı değil, gönderilen kayıt satırı sayısına göre belirlenir. 24 saatlik dönemde toplam 100 milyon kayıt işlenebilir.
İki versiyonun farkını somutlaştırmak için aynı işlemin her iki versiyondaki adımlarına bakalım.
Bulk API v1 ile veri yükleme adımları:
Bulk API 2.0 ile aynı işlem:
Sonuç: v1’de 9 adım, v2’de 5 adım. Manuel batch yönetimi ortadan kalkmış, hata yönetimi basitleşmiştir. API entegrasyonu projelerinde bu fark geliştirme süresini ve bakım maliyetini doğrudan etkiler.
Aşağıdaki adımlarda Postman üzerinden Bulk API 2.0 ile Contact nesnesi için insert işlemi gerçekleştiriyoruz.
Job oluşturmak için /services/data/v{{apiVersion}}/jobs/ingest/ adresine POST metodu ile istek atılır.
/services/data/v{{apiVersion}}/jobs/ingest/
Örnek istek gövdesi:
JSON
{ "object": "Contact", "contentType": "CSV", "operation": "insert" }
Önceki adımdan dönen yanıttaki JobId değeri alınır. Veriyi yüklemek için /services/data/v{{apiVersion}}/jobs/ingest/{{jobId}}/batches adresine PUT metodu ile istek atılır. Header’da Content-Type: text/csv olmalıdır.
/services/data/v{{apiVersion}}/jobs/ingest/{{jobId}}/batches
Content-Type: text/csv
Örnek CSV verisi:
CSV
FirstName,LastName,Title,Email John,Doe,Bulk API User,testuser@mdpgroup.com
Veri gönderimi tamamlandıktan sonra Job kapatılmalıdır. /services/data/v{{apiVersion}}/jobs/ingest/{{jobId}} adresine PATCH metodu ile istek atılır.
/services/data/v{{apiVersion}}/jobs/ingest/{{jobId}}
Job durumunu sorgulamak için aynı adrese GET metodu ile istek atılır.
İşlem sırasında oluşan hataları görmek için /services/data/v{{apiVersion}}/jobs/ingest/{{jobId}}/failedResults adresine GET metodu ile istek atılır.
/services/data/v{{apiVersion}}/jobs/ingest/{{jobId}}/failedResults
Bulk API v1’e kıyasla çok daha az adımla aynı sonuca ulaşıldı: batch bölümleme, zaman aşımı yönetimi ve SOAP kimlik doğrulaması gibi karmaşıklıklar tamamen ortadan kalktı.
Bulk API 2.0 ile veri yükleme, Job yönetimi, sonuç kontrolü ve SOQL desteğiyle Salesforce ortamından hızlı veri çekme işlemlerini tek adımda gerçekleştirmek için MDP SAP Salesforce Adapter‘ı kullanabilirsiniz. Adapter, SAP Integration Suite üzerinde çalışır ve Bulk API 2.0’ın tüm işlem adımlarını kapsülleyerek geliştirme süresini önemli ölçüde kısaltır.
SAP S/4HANA ve Salesforce arasında bulut tabanlı entegrasyon mimarisi konusunda daha fazla bilgi almak için ilgili blog yazımızı inceleyebilirsiniz.
Salesforce Bulk API 2.0 ile hangi işlemler yapılabilir?
Bulk API 2.0 insert, update, delete ve upsert işlemlerini destekler. Ayrıca query işlemi ile Salesforce’tan büyük veri kümelerini dışa aktarmak da mümkündür. Tüm işlemler CSV formatında veriyle gerçekleştirilir.
Bulk API 2.0 ile günde kaç kayıt işlenebilir?
Günlük limit 100 milyon kayıttır. Bu limit 24 saatlik dönem için geçerli olup job sayısından değil, işlenen toplam kayıt satırı sayısından hesaplanır.
Bulk API v1 yerine v2 kullanmam şart mı?
Salesforce, Bulk API v1’i resmi olarak deprecated ilan etmiştir ve yeni entegrasyonlar için Bulk API 2.0 kullanımını önermektedir. Mevcut v1 entegrasyonlarınız bir süre daha çalışmaya devam etse de yeni geliştirmelerde v2’ye geçmek hem bakım kolaylığı hem de uzun vadeli destek açısından doğru tercih olacaktır.
Bulk API 2.0 ile Salesforce standart REST API arasındaki fark nedir?
Standart Salesforce REST API tek kayıt ya da küçük gruplar için optimize edilmiştir ve günlük API çağrı limitleri kapsamındadır. Bulk API 2.0 ise büyük veri kümelerini asenkron olarak işlemek için tasarlanmıştır; batch bazlı çalışır ve ayrı bir günlük limit (100 milyon kayıt) uygulanır. Yüz binlerce veya milyonlarca kayıt aktarımında Bulk API tercih edilmelidir.
SAP’tan Salesforce’a veri aktarımında Bulk API 2.0 nasıl kullanılır?
SAP Integration Suite üzerinde MDP SAP Salesforce Adapter kullanılarak bu entegrasyon kurulabilir. Adapter, Job oluşturma, veri yükleme, Job kapatma ve sonuç kontrolü adımlarını otomatik olarak yönetir. SAP tarafında herhangi bir özel Bulk API geliştirmesi yapmanıza gerek kalmaz.
Salesforce Bulk API 2.0 Developer Guide — Salesforce Developers MDP Salesforce Bulk API v2 Adapter for SAP Cloud Platform Integration — SAP Community API Entegrasyonu Nedir? Nasıl Çalışır? — MDP Group SAP S/4HANA ve Salesforce Arasında Bulut Tabanlı Entegrasyon Mimarisi — MDP Group
SAP PI/PO/CPI Danışmanı
SAP EWM Nedir? EWM ile WM Arasındaki Farklar Nelerdir?
SAP Extended Warehouse Management (EWM) yani SAP Genişletilmiş Depo Yönetimi, işletmelerin depodaki envanterlerini verimli bir şekilde...
SAP Signavio Nedir?
Kötü yönetilen iş süreçleri, şirketlerin kayıplara uğramasına, müşteri ve çalışan kaybetmesine neden olmaktadır. Bu sebeple,...
SAP TM ile Lojistik Maliyetlerini Nasıl Optimize Edebilirsiniz?
Giriş Nakliye süreçlerinde maliyet hesaplamaları ve faturalandırma, lojistik operasyonlarının en önemli aşamalarından biridir. Manuel...
SAP Integration Suite ile TCMB Kur Entegrasyonu
Amaç : SAP Integration Suite ürünü kullanarak TCMB’nin açık kaynak kodundan USD para biriminin güncel Türk Lirasına karşılık gelen kur...
SAP Signavio Process Insight Nedir?
SAP Signavio Process Insight, şirketlerin süreçlerini iyileştirmelerine yardımcı olmak için tasarlanan SAP Signavio Process Transformation...
5S Kuralı (5S Metodolojisi) Nedir?
5S sistemi, bir iş yerindeki tüm alanların organize, verimli ve güvenli olması gerektiğini savunan bir metodolojidir. Japonya’da Toyota...
Elektronik Veri Değişimi (EDI) Nedir? Standartlar ve SAP Entegrasyonu
Elektronik Veri Değişimi (EDI), dünya çapında farklı kurumlar arasında iş belgelerinin bilgisayardan bilgisayara standart formatlarda...
SAP Marketing Cloud ve Çeşitli Uygulamaların Entegrasyonu
SAP Marketing Cloud Nedir ve Hangi Çözümleri Sunar?SAP Customer Experience, SAP Cloud for Customer, SAP Commerce Cloud, SAP Customer Data Cloud ve...
Ürün Takip Sistemi Nedir? Kapsamlı Rehber
ÜTS Nedir? ÜTS Bildirimi Ne İşe Yarar?Ürün takip sistemi (ÜTS), ihraç veya ithal edilen tüm tıbbi cihazların ve kozmetik ürünlerinin...
Mailiniz başarıyla gönderilmiştir en kısa sürede sizinle iletişime geçilecektir.
Mesajınız ulaştırılamadı! Lütfen daha sonra tekrar deneyin.