【Knowledge】Salesforce 與 Backlog 的統合
概要
通過 Baklog 的 Webhook 和 salesforce 的 web site 機制,實現 backlog的課題同期到salesforce。
Backlog的課題創建後自動與salesforce同期
流程
- 申請 我的域名
- 創建 site
- 自作與backlog同期之後的動作類(比如,新增課題等)
- 創建 custom url
- 設置對自作類的訪問權限
- 在backlog中設置webhook https://<サイトURL>/services/apexrest/
申請域名
創建site
自作類
public with sharing class BacklogParameter {
public Project project ;
public Content content ;
public class Project{
public String projectKey ;
}
public class Content {
public String summary ;
public String key_id ;
public String description ;
public Status status ;
}
public class Status {
public String name ;
public String id ;
}
}
@RestResource(urlMapping='/put_issues')
global with sharing class BacklogAPI
{
@HttpPost
global static ID doPost(){
RestRequest req = RestContext.request;
BacklogParameter params = (BacklogParameter)JSON.deserialize(req.requestBody.ToString(),BacklogParameter.class);
Issue__c issue = new Issue__c();
issue.Name = params.project.projectKey + '-' + params.content.key_id ;
issue.summary__c = params.content.summary ;
issue.description__c = params.content.description ;
issue.status__c = params.content.status.name ;
insert issue;
return issue.Id;
}
}
創建custom URL
設置對自作類的訪問控制
在backlog中設置webhook
測試
新建課題
salesforce結果確認