I'm attempting to deploy an API Connection to a Table Store via an ARM template, but the template below is returning an error -
Input parameters are invalid. See details for more information. Details:errorCode: ParameterNotDefined. Message: Parameter 'accountKey' is not allowed on the connection since it was not defined as a connection parameter when the API was registered.
I cannot find any docs specific to deploying such an API Connection via ARM, only generic ARM template docs which don't give any examples of which parameterValues
to use, and Table Store connection docs which seem to be aimed towards the REST API and don't specify the parameterVaules
required for ARM deployments.
Is anyone able to tell me which parameterValues
to use?
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"connectionName": {
"type": "string",
"defaultValue": "azuretablestest",
"metadata": {
"description": "The name of the connection to the Table Store that the Logic App will use."
}
},
"connectionDisplayName": {
"type": "string",
"defaultValue": "AzureTablesTest",
"metadata": {
"description": "The display name of the connection to the Table Store that the Logic App will use."
}
},
"locationName": {
"type": "string",
"defaultValue": "UK South",
"metadata": {
"description": "The Azure location to use when creating resources (eg. North Europe)."
}
}
},
"variables": {},
"resources": [
{
"comments": "Connection to the Table Store that will hold HMLR Business Gateway Service responses.",
"type": "Microsoft.Web/connections",
"name": "[parameters('connectionName')]",
"apiVersion": "2016-06-01",
"location": "[parameters('locationName')]",
"scale": null,
"properties": {
"displayName": "[parameters('connectionDisplayName')]",
"customParameterValues": {},
"parameterValues": {
"accountName": "mystorageaccount",
"accessKey": "**********",
"tableName": "myTableName"
},
"api": {
"id": "[concat(subscription().id, '/providers/Microsoft.Web/locations/', replace(toLower(parameters('locationName')), ' ', ''), '/managedApis/azuretables')]"
}
},
"dependsOn": []
}
]
}
The Table service supports batch operations for Insert Entity, Update Entity, Merge Entity, and Delete Entity operations.
The parameterValues should be as following:
"parameterValues": {
"storageaccount": "storageAccount",
"sharedkey": "accountKey"
}
And "tableName"
is not allowed in the parameterValues
.
I test it with following ARM template, it works correctly for me. If you don't want to using hard code with storage account key, you could use the ListKeys function in the ARM template.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"connectionName": {
"type": "string",
"defaultValue": "azuretablestest",
"metadata": {
"description": "The name of the connection to the Table Store that the Logic App will use."
}
},
"connectionDisplayName": {
"type": "string",
"defaultValue": "AzureTablesTest",
"metadata": {
"description": "The display name of the connection to the Table Store that the Logic App will use."
}
},
"locationName": {
"type": "string",
"defaultValue": "eastus",
"metadata": {
"description": "The Azure location to use when creating resources (eg. North Europe)."
}
}
},
"variables": {},
"resources": [
{
"comments": "Connection to the Table Store that will hold HMLR Business Gateway Service responses.",
"type": "Microsoft.Web/connections",
"name": "[parameters('connectionName')]",
"apiVersion": "2016-06-01",
"location": "[parameters('locationName')]",
"scale": null,
"properties": {
"displayName": "[parameters('connectionDisplayName')]",
"customParameterValues": {},
"parameterValues": {
"storageaccount": "accountName",
"sharedkey": "accountKey"
},
"api": {
"id": "[concat(subscription().id, '/providers/Microsoft.Web/locations/', replace(toLower(parameters('locationName')), ' ', ''), '/managedApis/azuretables')]"
}
},
"dependsOn": []
}
],
"outputs": {}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With