【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结果确认
在这里插入图片描述


版权声明:本文为oblily原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。