openapi: 3.2.0 info: title: CdnManagementClient AFD Origins API version: '2026-07-01' description: Use these APIs to manage Azure Front Door and CDN resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure. x-typespec-generated: - emitter: '@azure-tools/typespec-autorest' servers: - url: https://management.azure.com security: - azure_auth: - user_impersonation tags: - name: AFDOrigins paths: ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/origins : get: operationId: AFDOrigins_ListByOriginGroup tags: - AFDOrigins description: Lists all of the existing origins within an origin group. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: originGroupName in: path description: Name of the origin group which is unique within the endpoint. required: true schema: type: string responses: '200': description: Azure operation completed successfully. content: application/json: schema: $ref: '#/components/schemas/AFDOriginListResult' default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: AFDOrigins_ListByOriginGroup: $ref: ./examples/AFDOrigins_ListByOriginGroup.json x-ms-pageable: nextLinkName: nextLink summary: AFD origins list by origin group x-summary-source: derived ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/origins/{originName} : get: operationId: AFDOrigins_Get tags: - AFDOrigins description: Gets an existing origin within an origin group. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: originGroupName in: path description: Name of the origin group which is unique within the endpoint. required: true schema: type: string - name: originName in: path description: Name of the origin which is unique within the profile. required: true schema: type: string responses: '200': description: Azure operation completed successfully. content: application/json: schema: $ref: '#/components/schemas/AFDOrigin' default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: AFDOrigins_Get: $ref: ./examples/AFDOrigins_Get.json summary: AFD origins get x-summary-source: derived put: operationId: AFDOrigins_Create tags: - AFDOrigins description: Creates a new origin within the specified origin group. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: originGroupName in: path description: Name of the origin group which is unique within the endpoint. required: true schema: type: string - name: originName in: path description: Name of the origin which is unique within the profile. required: true schema: type: string responses: '200': description: Resource 'AFDOrigin' update operation succeeded content: application/json: schema: $ref: '#/components/schemas/AFDOrigin' '201': description: Resource 'AFDOrigin' create operation succeeded headers: Retry-After: description: The Retry-After header can indicate how long the client should wait before polling the operation status. schema: type: integer format: int32 content: application/json: schema: $ref: '#/components/schemas/AFDOrigin' '202': description: The request has been accepted for processing, but processing has not yet completed. headers: Location: description: The Location header contains the URL where the status of the long running operation can be checked. schema: type: string content: application/json: schema: $ref: '#/components/schemas/AFDOrigin' default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: AFDOrigins_Create: $ref: ./examples/AFDOrigins_Create.json AFDOrigins_Create_CustomCertificateSubject: $ref: ./examples/AFDOrigins_Create_CustomCertificateSubject.json AFDOrigins_Create_IncomingHostHeaderValidation: $ref: ./examples/AFDOrigins_CreateWithIncomingHostHeaderValidation.json AFDOrigins_Create_OriginHostname: $ref: ./examples/AFDOrigins_Create_OriginHostname.json x-ms-long-running-operation-options: final-state-via: azure-async-operation final-state-schema: '#/definitions/AFDOrigin' x-ms-long-running-operation: true requestBody: content: application/json: schema: $ref: '#/components/schemas/AFDOrigin' description: Origin properties required: true summary: AFD origins create x-summary-source: derived patch: operationId: AFDOrigins_Update tags: - AFDOrigins description: Updates an existing origin within an origin group. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: originGroupName in: path description: Name of the origin group which is unique within the endpoint. required: true schema: type: string - name: originName in: path description: Name of the origin which is unique within the profile. required: true schema: type: string responses: '200': description: Azure operation completed successfully. content: application/json: schema: $ref: '#/components/schemas/AFDOrigin' '202': description: The request has been accepted for processing, but processing has not yet completed. headers: Azure-AsyncOperation: description: A link to the status monitor schema: type: string Location: description: The Location header contains the URL where the status of the long running operation can be checked. schema: type: string content: application/json: schema: $ref: '#/components/schemas/AFDOrigin' default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: AFDOrigins_Update: $ref: ./examples/AFDOrigins_Update.json AFDOrigins_Update_CustomCertificateSubject: $ref: ./examples/AFDOrigins_Update_CustomCertificateSubject.json AFDOrigins_Update_OriginHostname: $ref: ./examples/AFDOrigins_Update_OriginHostname.json x-ms-long-running-operation-options: final-state-via: azure-async-operation final-state-schema: '#/definitions/AFDOrigin' x-ms-long-running-operation: true requestBody: content: application/json: schema: $ref: '#/components/schemas/AFDOriginUpdateParameters' description: Origin properties required: true summary: AFD origins update x-summary-source: derived delete: operationId: AFDOrigins_Delete tags: - AFDOrigins description: Deletes an existing origin within an origin group. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: originGroupName in: path description: Name of the origin group which is unique within the endpoint. required: true schema: type: string - name: originName in: path description: Name of the origin which is unique within the profile. required: true schema: type: string responses: '200': description: Resource deleted successfully. '202': description: Resource deletion accepted. headers: Azure-AsyncOperation: description: A link to the status monitor schema: type: string Location: description: The Location header contains the URL where the status of the long running operation can be checked. schema: type: string Retry-After: description: The Retry-After header can indicate how long the client should wait before polling the operation status. schema: type: integer format: int32 '204': description: Resource does not exist. default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: AFDOrigins_Delete: $ref: ./examples/AFDOrigins_Delete.json x-ms-long-running-operation-options: final-state-via: azure-async-operation x-ms-long-running-operation: true summary: AFD origins delete x-summary-source: derived components: schemas: AFDOriginUpdateParameters: type: object description: AFDOrigin properties needed for origin update. properties: properties: $ref: '#/components/schemas/AFDOriginUpdatePropertiesParameters' description: The JSON object that contains the properties of the origin. x-ms-client-flatten: true AFDOriginListResult: type: object description: The response of a AFDOrigin list operation. properties: value: type: array description: The AFDOrigin items on this page items: $ref: '#/components/schemas/AFDOrigin' nextLink: type: string format: uri description: The link to the next page of items required: - value CertificateNameCheckValidationMode: type: string description: The validation mode for certificate name check at origin level. Only applicable when enforceCertificateNameCheck is true. enum: - OriginHostname - CustomCertificateSubject - IncomingHostHeader x-ms-enum: name: CertificateNameCheckValidationMode modelAsString: true values: - name: OriginHostname value: OriginHostname description: Validate the certificate against the origin hostname. - name: CustomCertificateSubject value: CustomCertificateSubject description: Validate the certificate against custom certificate subjects. - name: IncomingHostHeader value: IncomingHostHeader description: Validate the certificate against the incoming host header. AFDOriginUpdatePropertiesParameters: type: object description: The JSON object that contains the properties of the origin. properties: originGroupName: type: string description: The name of the origin group which contains this origin. readOnly: true azureOrigin: $ref: '#/components/schemas/ResourceReference' description: Resource reference to the Azure origin resource. hostName: type: string description: The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.This should be unique across all origins in an endpoint. httpPort: type: integer format: int32 description: The value of the HTTP port. Must be between 1 and 65535. default: 80 minimum: 1 maximum: 65535 httpsPort: type: integer format: int32 description: The value of the HTTPS port. Must be between 1 and 65535. default: 443 minimum: 1 maximum: 65535 originHostHeader: type: string description: The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure Front Door origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint priority: type: integer format: int32 description: Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5 minimum: 1 maximum: 5 weight: type: integer format: int32 description: Weight of the origin in given origin group for load balancing. Must be between 1 and 1000 minimum: 1 maximum: 1000 sharedPrivateLinkResource: $ref: '#/components/schemas/SharedPrivateLinkResourceProperties' description: The properties of the private link resource for private origin. enabledState: $ref: '#/components/schemas/EnabledState' description: Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool. enforceCertificateNameCheck: type: boolean description: Whether to enable certificate name check at origin level default: true certificateNameCheckValidationMode: $ref: '#/components/schemas/CertificateNameCheckValidationMode' description: The validation mode for certificate name check. Only applicable when enforceCertificateNameCheck is true. customCertificateSubjects: type: array description: The list of custom certificate subjects to validate against. Only applicable when certificateNameCheckValidationMode is 'CustomCertificateSubject'. Must contain 1 or 2 entries. minItems: 1 maxItems: 2 items: type: string AFDOriginProperties: type: object description: The JSON object that contains the properties of the origin. properties: originGroupName: type: string description: The name of the origin group which contains this origin. readOnly: true azureOrigin: $ref: '#/components/schemas/ResourceReference' description: Resource reference to the Azure origin resource. hostName: type: string description: The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.This should be unique across all origins in an endpoint. httpPort: type: integer format: int32 description: The value of the HTTP port. Must be between 1 and 65535. default: 80 minimum: 1 maximum: 65535 httpsPort: type: integer format: int32 description: The value of the HTTPS port. Must be between 1 and 65535. default: 443 minimum: 1 maximum: 65535 originHostHeader: type: string description: The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure Front Door origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint priority: type: integer format: int32 description: Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5 minimum: 1 maximum: 5 weight: type: integer format: int32 description: Weight of the origin in given origin group for load balancing. Must be between 1 and 1000 minimum: 1 maximum: 1000 sharedPrivateLinkResource: $ref: '#/components/schemas/SharedPrivateLinkResourceProperties' description: The properties of the private link resource for private origin. enabledState: $ref: '#/components/schemas/EnabledState' description: Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool. enforceCertificateNameCheck: type: boolean description: Whether to enable certificate name check at origin level default: true certificateNameCheckValidationMode: $ref: '#/components/schemas/CertificateNameCheckValidationMode' description: The validation mode for certificate name check. Only applicable when enforceCertificateNameCheck is true. customCertificateSubjects: type: array description: The list of custom certificate subjects to validate against. Only applicable when certificateNameCheckValidationMode is 'CustomCertificateSubject'. Must contain 1 or 2 entries. minItems: 1 maxItems: 2 items: type: string provisioningState: $ref: '#/components/schemas/AfdProvisioningState' description: Provisioning status readOnly: true deploymentStatus: $ref: '#/components/schemas/DeploymentStatus' readOnly: true ResourceReference: type: object description: Reference to another resource. properties: id: type: string description: Resource ID. AfdProvisioningState: type: string description: Provisioning status enum: - Succeeded - Failed - Updating - Deleting - Creating x-ms-enum: name: AfdProvisioningState modelAsString: true values: - name: Succeeded value: Succeeded - name: Failed value: Failed - name: Updating value: Updating - name: Deleting value: Deleting - name: Creating value: Creating SharedPrivateLinkResourceProperties: type: object description: Describes the properties of an existing Shared Private Link Resource to use when connecting to a private origin. properties: privateLink: $ref: '#/components/schemas/ResourceReference' description: The resource id of the resource the shared private link resource is for. privateLinkLocation: type: string description: The location of the shared private link resource groupId: type: string description: The group id from the provider of resource the shared private link resource is for. requestMessage: type: string description: The request message for requesting approval of the shared private link resource. status: $ref: '#/components/schemas/SharedPrivateLinkResourceStatus' description: Status of the shared private link resource. Can be Pending, Approved, Rejected, Disconnected, or Timeout. EnabledState: type: string description: Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' enum: - Enabled - Disabled x-ms-enum: name: EnabledState modelAsString: true values: - name: Enabled value: Enabled - name: Disabled value: Disabled DeploymentStatus: type: string enum: - NotStarted - InProgress - Succeeded - Failed x-ms-enum: name: DeploymentStatus modelAsString: true values: - name: NotStarted value: NotStarted - name: InProgress value: InProgress - name: Succeeded value: Succeeded - name: Failed value: Failed SharedPrivateLinkResourceStatus: type: string description: Status of the shared private link resource. Can be Pending, Approved, Rejected, Disconnected, or Timeout. enum: - Pending - Approved - Rejected - Disconnected - Timeout x-ms-enum: name: SharedPrivateLinkResourceStatus modelAsString: false AFDOrigin: type: object description: Azure Front Door origin is the source of the content being delivered via Azure Front Door. When the edge nodes represented by an endpoint do not have the requested content cached, they attempt to fetch it from one or more of the configured origins. properties: properties: $ref: '#/components/schemas/AFDOriginProperties' description: The JSON object that contains the properties of the origin. x-ms-client-flatten: true allOf: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource securitySchemes: azure_auth: type: oauth2 flows: implicit: scopes: user_impersonation: impersonate your user account authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize description: Azure Active Directory OAuth2 Flow.