Microsoft Azure Functions · JSON Structure

Azure Functions Site Properties Structure

Site resource specific properties

Type: object Properties: 56
AzureCloudComputeEvent-DrivenMicrosoftServerless

SiteProperties is a JSON Structure definition published by Microsoft Azure Functions, describing 56 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

state hostNames repositorySiteName usageState enabled enabledHostNames availabilityState hostNameSslStates serverFarmId reserved isXenon hyperV lastModifiedTimeUtc dnsConfiguration outboundVnetRouting siteConfig functionAppConfig daprConfig workloadProfileName resourceConfig trafficManagerHostNames scmSiteAlsoStopped targetSwapSlot hostingEnvironmentProfile clientAffinityEnabled clientAffinityPartitioningEnabled clientAffinityProxyEnabled clientCertEnabled clientCertMode clientCertExclusionPaths ipMode endToEndEncryptionEnabled sshEnabled hostNamesDisabled customDomainVerificationId outboundIpAddresses possibleOutboundIpAddresses containerSize dailyMemoryTimeQuota suspendedTill maxNumberOfWorkers cloningInfo resourceGroup isDefaultContainer defaultHostName slotSwapStatus httpsOnly redundancyMode inProgressOperationId publicNetworkAccess

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/microsoft-azure-functions/refs/heads/main/json-structure/azure-functions-site-properties-structure.json",
  "name": "SiteProperties",
  "description": "Site resource specific properties",
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "description": "Current state of the app.",
      "readOnly": true
    },
    "hostNames": {
      "type": "array",
      "description": "Hostnames associated with the app.",
      "items": {
        "type": "string"
      },
      "readOnly": true
    },
    "repositorySiteName": {
      "type": "string",
      "description": "Name of the repository site.",
      "readOnly": true
    },
    "usageState": {
      "$ref": "#/definitions/UsageState",
      "description": "State indicating whether the app has exceeded its quota usage. Read-only.",
      "readOnly": true
    },
    "enabled": {
      "type": "boolean",
      "description": "<code>true</code> if the app is enabled; otherwise, <code>false</code>. Setting this value to false disables the app (takes the app offline)."
    },
    "enabledHostNames": {
      "type": "array",
      "description": "Enabled hostnames for the app.Hostnames need to be assigned (see HostNames) AND enabled. Otherwise,\nthe app is not served on those hostnames.",
      "items": {
        "type": "string"
      },
      "readOnly": true
    },
    "availabilityState": {
      "$ref": "#/definitions/SiteAvailabilityState",
      "description": "Management information availability state for the app.",
      "readOnly": true
    },
    "hostNameSslStates": {
      "type": "array",
      "description": "Hostname SSL states are used to manage the SSL bindings for app's hostnames.",
      "items": {
        "$ref": "#/definitions/HostNameSslState"
      },
      "x-ms-identifiers": [
        "name"
      ]
    },
    "serverFarmId": {
      "type": "string",
      "description": "Resource ID of the associated App Service plan, formatted as: \"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}\"."
    },
    "reserved": {
      "type": "boolean",
      "description": "<code>true</code> if reserved; otherwise, <code>false</code>.",
      "default": false,
      "x-ms-mutability": [
        "read",
        "create"
      ]
    },
    "isXenon": {
      "type": "boolean",
      "description": "Obsolete: Hyper-V sandbox.",
      "default": false,
      "x-ms-mutability": [
        "read",
        "create"
      ]
    },
    "hyperV": {
      "type": "boolean",
      "description": "Hyper-V sandbox.",
      "default": false,
      "x-ms-mutability": [
        "read",
        "create"
      ]
    },
    "lastModifiedTimeUtc": {
      "type": "datetime",
      "description": "Last time the app was modified, in UTC. Read-only.",
      "readOnly": true
    },
    "dnsConfiguration": {
      "$ref": "#/definitions/SiteDnsConfig",
      "description": "Property to configure various DNS related settings for a site."
    },
    "outboundVnetRouting": {
      "$ref": "#/definitions/OutboundVnetRouting",
      "description": "Property to configure various outbound traffic routing options over virtual network for a site"
    },
    "siteConfig": {
      "$ref": "#/definitions/SiteConfig",
      "description": "Configuration of an App Service app. This property is not returned in response to normal create and read requests since it may contain sensitive information.",
      "x-ms-mutability": [
        "update",
        "create"
      ]
    },
    "functionAppConfig": {
      "$ref": "#/definitions/FunctionAppConfig",
      "description": "Configuration specific of the Azure Function app."
    },
    "daprConfig": {
      "$ref": "#/definitions/DaprConfig",
      "description": "Dapr configuration of the app."
    },
    "workloadProfileName": {
      "type": "string",
      "description": "Workload profile name for function app to execute on."
    },
    "resourceConfig": {
      "$ref": "#/definitions/ResourceConfig",
      "description": "Function app resource requirements."
    },
    "trafficManagerHostNames": {
      "type": "array",
      "description": "Azure Traffic Manager hostnames associated with the app. Read-only.",
      "items": {
        "type": "string"
      },
      "readOnly": true
    },
    "scmSiteAlsoStopped": {
      "type": "boolean",
      "description": "<code>true</code> to stop SCM (KUDU) site when the app is stopped; otherwise, <code>false</code>. The default is <code>false</code>.",
      "default": false
    },
    "targetSwapSlot": {
      "type": "string",
      "description": "Specifies which deployment slot this app will swap into. Read-only.",
      "readOnly": true
    },
    "hostingEnvironmentProfile": {
      "$ref": "#/definitions/HostingEnvironmentProfile",
      "description": "App Service Environment to use for the app.",
      "x-ms-mutability": [
        "read",
        "create"
      ]
    },
    "clientAffinityEnabled": {
      "type": "boolean",
      "description": "<code>true</code> to enable client affinity; <code>false</code> to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is <code>true</code>.",
      "default": false
    },
    "clientAffinityPartitioningEnabled": {
      "type": "boolean",
      "description": "<code>true</code> to enable client affinity partitioning using CHIPS cookies, this will add the <code>partitioned</code> property to the affinity cookies; <code>false</code> to stop sending partitioned affinity cookies. Default is <code>false</code>."
    },
    "clientAffinityProxyEnabled": {
      "type": "boolean",
      "description": "<code>true</code> to override client affinity cookie domain with X-Forwarded-Host request header. <code>false</code> to use default domain. Default is <code>false</code>."
    },
    "clientCertEnabled": {
      "type": "boolean",
      "description": "<code>true</code> to enable client certificate authentication (TLS mutual authentication); otherwise, <code>false</code>. Default is <code>false</code>."
    },
    "clientCertMode": {
      "$ref": "#/definitions/ClientCertMode",
      "description": "This composes with ClientCertEnabled setting.\n- ClientCertEnabled: false means ClientCert is ignored.\n- ClientCertEnabled: true and ClientCertMode: Required means ClientCert is required.\n- ClientCertEnabled: true and ClientCertMode: Optional means ClientCert is optional or accepted."
    },
    "clientCertExclusionPaths": {
      "type": "string",
      "description": "client certificate authentication comma-separated exclusion paths"
    },
    "ipMode": {
      "$ref": "#/definitions/IPMode",
      "description": "Specifies the IP mode of the app."
    },
    "endToEndEncryptionEnabled": {
      "type": "boolean",
      "description": "Whether to use end to end encryption between the FrontEnd and the Worker"
    },
    "sshEnabled": {
      "type": "boolean",
      "description": "Whether to enable ssh access."
    },
    "hostNamesDisabled": {
      "type": "boolean",
      "description": "<code>true</code> to disable the public hostnames of the app; otherwise, <code>false</code>.\nIf <code>true</code>, the app is only accessible via API management process."
    },
    "customDomainVerificationId": {
      "type": "string",
      "description": "Unique identifier that verifies the custom domains assigned to the app. Customer will add this id to a txt record for verification."
    },
    "outboundIpAddresses": {
      "type": "string",
      "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from tenants that site can be hosted with current settings. Read-only.",
      "readOnly": true
    },
    "possibleOutboundIpAddresses": {
      "type": "string",
      "description": "List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from all tenants except dataComponent. Read-only.",
      "readOnly": true
    },
    "containerSize": {
      "type": "integer",
      "format": "int32",
      "description": "Size of the function container."
    },
    "dailyMemoryTimeQuota": {
      "type": "integer",
      "format": "int32",
      "description": "Maximum allowed daily memory-time quota (applicable on dynamic apps only)."
    },
    "suspendedTill": {
      "type": "datetime",
      "description": "App suspended till in case memory-time quota is exceeded.",
      "readOnly": true
    },
    "maxNumberOfWorkers": {
      "type": "integer",
      "format": "int32",
      "description": "Maximum number of workers.\nThis only applies to Functions container.",
      "readOnly": true
    },
    "cloningInfo": {
      "$ref": "#/definitions/CloningInfo",
      "description": "If specified during app creation, the app is cloned from a source app.",
      "x-ms-mutability": [
        "create"
      ]
    },
    "resourceGroup": {
      "type": "string",
      "description": "Name of the resource group the app belongs to. Read-only.",
      "readOnly": true
    },
    "isDefaultContainer": {
      "type": "boolean",
      "description": "<code>true</code> if the app is a default container; otherwise, <code>false</code>.",
      "readOnly": true
    },
    "defaultHostName": {
      "type": "string",
      "description": "Default hostname of the app. Read-only.",
      "readOnly": true
    },
    "slotSwapStatus": {
      "$ref": "#/definitions/SlotSwapStatus",
      "description": "Status of the last deployment slot swap operation.",
      "readOnly": true
    },
    "httpsOnly": {
      "type": "boolean",
      "description": "HttpsOnly: configures a web site to accept only https requests. Issues redirect for\nhttp requests"
    },
    "redundancyMode": {
      "$ref": "#/definitions/RedundancyMode",
      "description": "Site redundancy mode"
    },
    "inProgressOperationId": {
      "type": "string",
      "format": "uuid",
      "description": "Specifies an operation id if this site has a pending operation.",
      "readOnly": true
    },
    "publicNetworkAccess": {
      "type": "string",
      "description": "Property to allow or block all public traffic. Allowed Values: 'Enabled', 'Disabled' or an empty string."
    },
    "storageAccountRequired": {
      "type": "boolean",
      "description": "Checks if Customer provided storage account is required"
    },
    "keyVaultReferenceIdentity": {
      "type": "string",
      "description": "Identity to use for Key Vault Reference authentication."
    },
    "autoGeneratedDomainNameLabelScope": {
      "$ref": "#/definitions/AutoGeneratedDomainNameLabelScope",
      "description": "Specifies the scope of uniqueness for the default hostname during resource creation"
    },
    "virtualNetworkSubnetId": {
      "type": "string",
      "description": "Azure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration.\nThis must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}"
    },
    "managedEnvironmentId": {
      "type": "string",
      "description": "Azure Resource Manager ID of the customer's selected Managed Environment on which to host this app. This must be of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.App/managedEnvironments/{managedEnvironmentName}"
    },
    "sku": {
      "type": "string",
      "description": "Current SKU of application based on associated App Service Plan. Some valid SKU values are Free, Shared, Basic, Dynamic, FlexConsumption, Standard, Premium, PremiumV2, PremiumV3, Isolated, IsolatedV2",
      "readOnly": true
    }
  }
}