プロセスエンジニアリング部の谷です。
SalesforceをPythonから叩くため、simplesalesforceというモジュールがあります。 今回は、その使い方を説明したいと思います。
事前準備
Pythonバージョン 3.5、3.6、3.7、および3.8
インストール
pip install simple_salesforce
アクセス方法
from simple_salesforce import Salesforce sf = Salesforce(username='myemail@example.com.sandbox名', password='password', security_token='token', domain='test')
sandboxに入る場合、メールアドレスの後ろにsandbox名を入力し、domainを追加します。(値は'test'でOK)
注意点としては、security_tokenは、sandboxの中から取得してください。
操作方法
基本の型
sf.オブジェクト名.アクション()
オブジェクト名はSalesforceのカスタムオブジェクトで確認してください。
参照
サポート組織ユーザーを参照します。
sf.SupportOrganizationUserRel__c.get('サポート組織ID')
サポート組織IDは、URLの末尾の英数字になります。
情報がOrderedDict型で表示されます。
作成
形的には参照と同じです。
オブジェクトの中にオブジェクトを作成したい場合のやり方を説明します。
たとえば、プロダクトサポート管理のプロダクトキーを作成する場合、プロダクトキーにはIDがないので、作成したいプロダクトサポート管理IDを指定してあげます。
sf.ProductKey__c.create({'ProductSupportManagement__c':'プロダクトサポート管理ID'})
更新
オブジェクトを指定、その中の変更したい項目を指定して新しい名称を入力します。
チェックを入れる、外す時は、True/Falseで指定します。
sf.SupportOrganizationUserRel__c.update('サポート組織ユーザーID',{'Name':'変更後の名前','EmergencyEmail__c':True})
まとめ
simplesalesforceを使ってみて、使い方がとても分かりやすかったのでサクサク進めることができました。(説明いらないくらい)
ただ、オブジェクトの中にオブジェクトを作成するときなどは、僕自身少し戸惑ってしまったので、参考になれば幸いです。