Microsoft Azure Cdn AFD Origins API

The AFDOrigins API from Microsoft Azure Cdn — 2 operation(s) for afdorigins.

Business capability
IT Infrastructure Management BC-600.50

Operations 5

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/origins List origins in a Front Door origin group · AFD origins list by origin group #
Ask an LLM
“Which backend servers are in one of my Front Door origin groups?”
“Can I see every origin inside a specific origin group?”
Tell an agent
List the origins in origin group {group} of profile {profile}.
Show all backends under group {group} on {profile}.
GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/origins/{originName} Get a Front Door origin · AFD origins get #
Ask an LLM
“What hostname, priority and weight does one of my Front Door origins have?”
“Where can I look up a single backend's settings in an origin group?”
Tell an agent
Get origin {origin} from group {group} in profile {profile}.
Show the configuration of origin {origin} in {group} on {profile}.
PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/origins/{originName} Add an origin to a Front Door origin group · AFD origins create #
Ask an LLM
“How do I add a new backend server to my Azure Front Door origin group?”
“Can I set priority and weight when adding an origin?”
Tell an agent
Create origin {origin} in group {group} of profile {profile}.
Add backend {origin} to origin group {group} on {profile} with {properties}.
PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/origins/{originName} Update an existing Front Door origin · AFD origins update #
Ask an LLM
“Can I change the weight or disable an origin that is already in a group?”
“How do I update the host header on an existing Front Door origin?”
Tell an agent
Update existing origin {origin} in group {group} of {profile} with {properties}.
Patch the priority and weight of origin {origin} in {group} on profile {profile}.
DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/origins/{originName} Remove an origin from a Front Door origin group · AFD origins delete #
Ask an LLM
“Can I take a retired backend out of my Front Door origin group?”
“What happens to traffic when I delete an origin from its group?”
Tell an agent destructive · confirm first
Delete origin {origin} from group {group} in profile {profile}.
Remove backend {origin} out of {group} on {profile} permanently.

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/microsoft-azure-cdn:microsoft-azure-cdn-afdorigins-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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.

OpenAPI Specification

microsoft-azure-cdn-afdorigins-api-openapi.yml Raw ↑
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.