【问题标题】:How to create a connected app through API?如何通过 API 创建连接的应用程序?
【发布时间】:2020-03-09 13:21:19
【问题描述】:

我们正在构建一个数据集成平台以连接到 Salesforce。

想知道是否有任何文档可以使用 API 以编程方式创建连接的应用程序。我看到很多关于通过 UI 而不是通过 API 创建连接应用程序的文档。

【问题讨论】:

    标签: oauth-2.0 salesforce


    【解决方案1】:

    您可以通过元数据 API 创建连接的应用程序,就像任何其他 Salesforce 元数据一样。

    最简单的方法是在 Salesforce 组织中构建 Connected App,然后使用元数据 API 客户端(SFDX、Workbench、CumulusCI、Ant...)提取它。从元数据中删除消费者密钥,然后您就可以将该连接的应用程序干净地部署到另一个组织中。

    但请注意,这很少有必要。连接的应用程序是全局元数据:您通常在您控制的单个组织中维护连接的应用程序,然后它可以在任何地方使用。只有当每个订阅者组织都需要一个不同的时,我才真正看到需要部署连接的应用程序。

    【讨论】:

      【解决方案2】:

      此代码创建连接的应用程序。

          MetadataService.MetadataPort service = createService();
          MetadataService.ConnectedApp connectedApp = new MetadataService.ConnectedApp();
      
          connectedApp.label = 'Test 005';
          connectedApp.fullName = 'Test_005';
          connectedApp.contactEmail = 'email@email.com';
      
          MetadataService.ConnectedAppOauthConfig oauthConfig = new 
          MetadataService.ConnectedAppOauthConfig();
      
          oauthConfig.consumerKey = 'yourConsumerKey';
          oauthConfig.consumerSecret = 'yourConsumerSecret';
          oauthConfig.scopes = new List<String>{'Basic', 'Api', 'Web', 'Full'};
          oauthConfig.callbackUrl = 'https://www.google.com/';
      
          connectedApp.oauthConfig = oauthConfig;
      
          List<MetadataService.SaveResult> results = service.createMetadata(new 
          MetadataService.Metadata[] { connectedApp });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-02-09
        • 2022-01-04
        • 2014-05-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-08
        相关资源
        最近更新 更多