Microsoft Azure Cdn · Schema
Profile
A profile is a logical grouping of endpoints that share the same settings.
CDNEdgeCachingCloud InfrastructureNetworkingWeb PerformanceMicrosoft AzureContent DeliveryWeb Application Firewall
Properties
| Name | Type | Description |
|---|---|---|
| properties | object | The JSON object that contains the properties required to create a profile. |
| sku | object | The pricing tier (defines Azure Front Door Standard or Premium or a CDN provider, feature list and rate) of the profile. |
| kind | string | Kind of the profile. Used by portal to differentiate traditional CDN profile and new AFD profile. |
| identity | object | The managed service identities assigned to this resource. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/microsoft-azure-cdn/json-schema/microsoft-azure-cdn-profile-schema.json",
"title": "Profile",
"description": "A profile is a logical grouping of endpoints that share the same settings.",
"x-generated": "2026-11-05",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/microsoft-azure-cdn-profiles-api-openapi.yml#/components/schemas/Profile",
"type": "object",
"properties": {
"properties": {
"$ref": "#/$defs/ProfileProperties",
"description": "The JSON object that contains the properties required to create a profile.",
"x-ms-client-flatten": true
},
"sku": {
"$ref": "#/$defs/Sku",
"description": "The pricing tier (defines Azure Front Door Standard or Premium or a CDN provider, feature list and rate) of the profile."
},
"kind": {
"type": "string",
"description": "Kind of the profile. Used by portal to differentiate traditional CDN profile and new AFD profile.",
"readOnly": true
},
"identity": {
"$ref": "../../../../../../common-types/resource-management/v6/managedidentity.json#/definitions/ManagedServiceIdentity",
"description": "The managed service identities assigned to this resource."
}
},
"required": [
"sku"
],
"allOf": [
{
"$ref": "../../../../../../common-types/resource-management/v6/types.json#/definitions/TrackedResource"
}
],
"$defs": {
"ProfileLogScrubbing": {
"type": "object",
"description": "Defines rules that scrub sensitive fields in the Azure Front Door profile logs.",
"properties": {
"state": {
"$ref": "#/$defs/ProfileScrubbingState",
"description": "State of the log scrubbing config. Default value is Enabled."
},
"scrubbingRules": {
"type": "array",
"description": "List of log scrubbing rules applied to the Azure Front Door profile logs.",
"items": {
"$ref": "#/$defs/ProfileScrubbingRules"
},
"x-ms-identifiers": []
}
}
},
"ProfileProperties": {
"type": "object",
"description": "The JSON object that contains the properties required to create a profile.",
"properties": {
"resourceState": {
"$ref": "#/$defs/ProfileResourceState",
"description": "Resource status of the profile.",
"readOnly": true
},
"provisioningState": {
"$ref": "#/$defs/ProfileProvisioningState",
"description": "Provisioning status of the profile.",
"readOnly": true
},
"extendedProperties": {
"type": "object",
"description": "Key-Value pair representing additional properties for profiles.",
"additionalProperties": {
"type": "string"
},
"readOnly": true
},
"frontDoorId": {
"type": "string",
"description": "The Id of the frontdoor.",
"readOnly": true
},
"originResponseTimeoutSeconds": {
"type": "integer",
"format": "int32",
"description": "Send and receive timeout on forwarding request to the origin. When timeout is reached, the request fails and returns.",
"minimum": 16
},
"logScrubbing": {
"$ref": "#/$defs/ProfileLogScrubbing",
"description": "Defines rules that scrub sensitive fields in the Azure Front Door profile logs."
}
}
},
"ProfileProvisioningState": {
"type": "string",
"description": "Provisioning status of the profile.",
"enum": [
"Succeeded",
"Failed",
"Updating",
"Deleting",
"Creating"
],
"x-ms-enum": {
"name": "ProfileProvisioningState",
"modelAsString": true,
"values": [
{
"name": "Succeeded",
"value": "Succeeded"
},
{
"name": "Failed",
"value": "Failed"
},
{
"name": "Updating",
"value": "Updating"
},
{
"name": "Deleting",
"value": "Deleting"
},
{
"name": "Creating",
"value": "Creating"
}
]
}
},
"ProfileResourceState": {
"type": "string",
"description": "Resource status of the profile.",
"enum": [
"Creating",
"Active",
"Deleting",
"Disabled",
"Migrating",
"Migrated",
"PendingMigrationCommit",
"CommittingMigration",
"AbortingMigration"
],
"x-ms-enum": {
"name": "ProfileResourceState",
"modelAsString": true,
"values": [
{
"name": "Creating",
"value": "Creating"
},
{
"name": "Active",
"value": "Active"
},
{
"name": "Deleting",
"value": "Deleting"
},
{
"name": "Disabled",
"value": "Disabled"
},
{
"name": "Migrating",
"value": "Migrating"
},
{
"name": "Migrated",
"value": "Migrated"
},
{
"name": "PendingMigrationCommit",
"value": "PendingMigrationCommit"
},
{
"name": "CommittingMigration",
"value": "CommittingMigration"
},
{
"name": "AbortingMigration",
"value": "AbortingMigration"
}
]
}
},
"ProfileScrubbingRules": {
"type": "object",
"description": "Defines the contents of the log scrubbing rules.",
"properties": {
"matchVariable": {
"$ref": "#/$defs/ScrubbingRuleEntryMatchVariable",
"description": "The variable to be scrubbed from the logs."
},
"selectorMatchOperator": {
"$ref": "#/$defs/ScrubbingRuleEntryMatchOperator",
"description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this rule applies to."
},
"selector": {
"type": "string",
"description": "When matchVariable is a collection, operator used to specify which elements in the collection this rule applies to."
},
"state": {
"$ref": "#/$defs/ScrubbingRuleEntryState",
"description": "Defines the state of a log scrubbing rule. Default value is enabled."
}
},
"required": [
"matchVariable",
"selectorMatchOperator"
]
},
"ProfileScrubbingState": {
"type": "string",
"description": "State of the log scrubbing config. Default value is Enabled.",
"enum": [
"Enabled",
"Disabled"
],
"x-ms-enum": {
"name": "ProfileScrubbingState",
"modelAsString": true,
"values": [
{
"name": "Enabled",
"value": "Enabled"
},
{
"name": "Disabled",
"value": "Disabled"
}
]
}
},
"ScrubbingRuleEntryMatchOperator": {
"type": "string",
"description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this rule applies to.",
"enum": [
"EqualsAny"
],
"x-ms-enum": {
"name": "ScrubbingRuleEntryMatchOperator",
"modelAsString": true,
"values": [
{
"name": "EqualsAny",
"value": "EqualsAny"
}
]
}
},
"ScrubbingRuleEntryMatchVariable": {
"type": "string",
"description": "The variable to be scrubbed from the logs.",
"enum": [
"RequestIPAddress",
"RequestUri",
"QueryStringArgNames"
],
"x-ms-enum": {
"name": "ScrubbingRuleEntryMatchVariable",
"modelAsString": true,
"values": [
{
"name": "RequestIPAddress",
"value": "RequestIPAddress"
},
{
"name": "RequestUri",
"value": "RequestUri"
},
{
"name": "QueryStringArgNames",
"value": "QueryStringArgNames"
}
]
}
},
"ScrubbingRuleEntryState": {
"type": "string",
"description": "Defines the state of a log scrubbing rule. Default value is enabled.",
"enum": [
"Enabled",
"Disabled"
],
"x-ms-enum": {
"name": "ScrubbingRuleEntryState",
"modelAsString": true,
"values": [
{
"name": "Enabled",
"value": "Enabled"
},
{
"name": "Disabled",
"value": "Disabled"
}
]
}
},
"Sku": {
"type": "object",
"description": "Standard_Verizon = The SKU name for a Standard Verizon CDN profile.\nPremium_Verizon = The SKU name for a Premium Verizon CDN profile.\nCustom_Verizon = The SKU name for a Custom Verizon CDN profile.\nStandard_Akamai = The SKU name for an Akamai CDN profile.\nStandard_ChinaCdn = The SKU name for a China CDN profile for VOD, Web and download scenarios using GB based billing model.\nStandard_Microsoft = The SKU name for a Standard Microsoft CDN profile.\nStandard_AzureFrontDoor = The SKU name for an Azure Front Door Standard profile.\nPremium_AzureFrontDoor = The SKU name for an Azure Front Door Premium profile.\nStandard_955BandWidth_ChinaCdn = The SKU name for a China CDN profile for VOD, Web and download scenarios using 95-5 peak bandwidth billing model.\nStandard_AvgBandWidth_ChinaCdn = The SKU name for a China CDN profile for VOD, Web and download scenarios using monthly average peak bandwidth billing model.\nStandardPlus_ChinaCdn = The SKU name for a China CDN profile for live-streaming using GB based billing model.\nStandardPlus_955BandWidth_ChinaCdn = The SKU name for a China CDN live-streaming profile using 95-5 peak bandwidth billing model.\nStandardPlus_AvgBandWidth_ChinaCdn = The SKU name for a China CDN live-streaming profile using monthly average peak bandwidth billing model.",
"properties": {
"name": {
"$ref": "#/$defs/SkuName",
"description": "Name of the pricing tier."
}
}
},
"SkuName": {
"type": "string",
"description": "Name of the pricing tier.",
"enum": [
"Standard_Verizon",
"Premium_Verizon",
"Custom_Verizon",
"Standard_Akamai",
"Standard_ChinaCdn",
"Standard_Microsoft",
"Standard_AzureFrontDoor",
"Premium_AzureFrontDoor",
"Standard_955BandWidth_ChinaCdn",
"Standard_AvgBandWidth_ChinaCdn",
"StandardPlus_ChinaCdn",
"StandardPlus_955BandWidth_ChinaCdn",
"StandardPlus_AvgBandWidth_ChinaCdn"
],
"x-ms-enum": {
"name": "SkuName",
"modelAsString": true,
"values": [
{
"name": "Standard_Verizon",
"value": "Standard_Verizon"
},
{
"name": "Premium_Verizon",
"value": "Premium_Verizon"
},
{
"name": "Custom_Verizon",
"value": "Custom_Verizon"
},
{
"name": "Standard_Akamai",
"value": "Standard_Akamai"
},
{
"name": "Standard_ChinaCdn",
"value": "Standard_ChinaCdn"
},
{
"name": "Standard_Microsoft",
"value": "Standard_Microsoft"
},
{
"name": "Standard_AzureFrontDoor",
"value": "Standard_AzureFrontDoor"
},
{
"name": "Premium_AzureFrontDoor",
"value": "Premium_AzureFrontDoor"
},
{
"name": "Standard_955BandWidth_ChinaCdn",
"value": "Standard_955BandWidth_ChinaCdn"
},
{
"name": "Standard_AvgBandWidth_ChinaCdn",
"value": "Standard_AvgBandWidth_ChinaCdn"
},
{
"name": "StandardPlus_ChinaCdn",
"value": "StandardPlus_ChinaCdn"
},
{
"name": "StandardPlus_955BandWidth_ChinaCdn",
"value": "StandardPlus_955BandWidth_ChinaCdn"
},
{
"name": "StandardPlus_AvgBandWidth_ChinaCdn",
"value": "StandardPlus_AvgBandWidth_ChinaCdn"
}
]
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/microsoft-azure-cdn-profile"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.