首页 > 解决方案 > 如何以编程方式接受用于 sendgrid 青铜帐户的 ARM 模板的市场条款

问题描述

我能够使用 ARM 模板创建免费的 sendgrid 帐户,但无法创建青铜类型帐户。

{
  "name": "[variables('testsendgrid')]",
  "type": "Sendgrid.Email/accounts",
  "location": "[resourceGroup().location]",
  "apiVersion": "2015-01-01",
  "plan": {
    "name": "bronze",
    "publisher": "Sendgrid",
    "product": "sendgrid_azure",
    "promotionCode": ""
  },
  "properties": {
    "password": "[variables('pswd')]",
    "acceptMarketingEmails":true,
    "email": "xxx.xx@xx.com"
   }
  }

"error": { "code": "ResourcePurchaseValidationFailed", "message": "用户购买资源验证失败。错误消息:'此订阅中的此项目未接受法律条款:'dXXXX-xxxx-xx-xx -xxxxxxxx'。要使用 PowerShell 接受法律条款,请使用 Get-AzureRmMarketplaceTerms 和 Set-AzureRmMarketplaceTerms API ( https://go.microsoft.com/fwlink/?linkid=862451 ) 或通过 Azure 门户部署以接受条款' " }

标签: azureazure-devopssendgridazure-resource-managerarm-template

解决方案


您需要运行几行 PowerShell 来获取和设置条款的接受。例如:

$terms = Get-AzureRmMarketplaceTerms -Publisher 'SendGrid' -Product 'sendgrid_azure' -Name 'bronze'
Set-AzureRmMarketplaceTerms -Publisher 'SendGrid' -Product 'sendgrid_azure' -Name 'bronze' -Terms $terms -Accept

确保该属性Accepted:设置为True。结果: 在此处输入图像描述


推荐阅读