如何通过API创建连接的应用程序?
How to create a connected app through API?
我们正在构建一个连接到 Salesforce 的数据集成平台。
想知道是否有任何文档可以使用 APIs 以编程方式创建连接的应用程序。我看到很多关于通过 UI 创建连接的应用程序的文档,而不是通过 API.
您可以通过元数据 API 创建连接的应用程序,就像任何其他 Salesforce 元数据一样。
最简单的方法是在 Salesforce 组织中构建连接的应用程序,然后使用元数据 API 客户端(SFDX、Workbench、CumulusCI、Ant...)提取它.从元数据中删除消费者密钥,然后您就可以将该连接的应用程序干净地部署到另一个组织中。
不过请注意,这很少是必要的。连接的应用程序是全局元数据:您通常在您控制的单个组织中维护连接的应用程序,然后它在任何地方都可用。当每个订阅者组织需要 不同 时,我真的只看到需要部署连接的应用程序。
此代码创建连接的应用程序。
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 });
我们正在构建一个连接到 Salesforce 的数据集成平台。
想知道是否有任何文档可以使用 APIs 以编程方式创建连接的应用程序。我看到很多关于通过 UI 创建连接的应用程序的文档,而不是通过 API.
您可以通过元数据 API 创建连接的应用程序,就像任何其他 Salesforce 元数据一样。
最简单的方法是在 Salesforce 组织中构建连接的应用程序,然后使用元数据 API 客户端(SFDX、Workbench、CumulusCI、Ant...)提取它.从元数据中删除消费者密钥,然后您就可以将该连接的应用程序干净地部署到另一个组织中。
不过请注意,这很少是必要的。连接的应用程序是全局元数据:您通常在您控制的单个组织中维护连接的应用程序,然后它在任何地方都可用。当每个订阅者组织需要 不同 时,我真的只看到需要部署连接的应用程序。
此代码创建连接的应用程序。
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 });