NetworkExperiments icon

NetworkExperiments

These are the Network Experiment APIs

COMMUNITYBEARER0 INSTALLS
OpenAPI Specificationv3.0
{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "management.azure.com",
  "info": {
    "description": "These are the Network Experiment APIs.\n",
    "title": "NetworkExperiments",
    "version": "2019-11-01",
    "x-apisguru-categories": [
      "cloud"
    ],
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png"
    },
    "x-origin": [
      {
        "format": "swagger",
        "url": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-11-01/networkexperiment.json",
        "version": "2.0"
      }
    ],
    "x-providerName": "azure.com",
    "x-serviceName": "frontdoor-networkexperiment",
    "x-tags": [
      "Azure",
      "Microsoft"
    ]
  },
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "securityDefinitions": {
    "azure_auth": {
      "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
      "description": "Azure Active Directory OAuth2 Flow",
      "flow": "implicit",
      "scopes": {
        "user_impersonation": "impersonate your user account"
      },
      "type": "oauth2"
    }
  },
  "security": [
    {
      "azure_auth": [
        "user_impersonation"
      ]
    }
  ],
  "parameters": {
    "ExperimentNameParameter": {
      "description": "The Experiment identifier associated with the Experiment",
      "in": "path",
      "name": "experimentName",
      "pattern": "^[a-zA-Z0-9_\\-\\(\\)\\.]*[^\\.]$",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "ProfileNameParameter": {
      "description": "The Profile identifier associated with the Tenant and Partner",
      "in": "path",
      "name": "profileName",
      "pattern": "^[a-zA-Z0-9_\\-\\(\\)\\.]*[^\\.]$",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "ResourceGroupNameParameter": {
      "description": "Name of the Resource group within the Azure subscription.",
      "in": "path",
      "maxLength": 80,
      "minLength": 1,
      "name": "resourceGroupName",
      "pattern": "^[a-zA-Z0-9_\\-\\(\\)\\.]*[^\\.]$",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    }
  },
  "tags": [
    {
      "description": "The configuration of Network Experiment profiles",
      "name": "NetworkExperimentProfiles"
    },
    {
      "description": "The configuration of the Network Experiment experiments",
      "name": "Experiments"
    },
    {
      "description": "The preconfigured endpoints and details",
      "name": "PreconfiguredEndpoints"
    },
    {
      "description": "The analysis and results of the experiments",
      "name": "Reports"
    }
  ],
  "paths": {
    "/subscriptions/{subscriptionId}/providers/Microsoft.Network/NetworkExperimentProfiles": {
      "get": {
        "operationId": "NetworkExperimentProfiles_List",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/ProfileList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Gets a list of Network Experiment Profiles under a subscription",
        "tags": [
          "NetworkExperimentProfiles"
        ],
        "x-ms-examples": {
          "List NetworkExperiment Profiles in a Resource Group": {
            "parameters": {
              "api-version": "2019-11-01",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/",
                      "location": "WestUs",
                      "name": "MyProfile",
                      "properties": {
                        "enabledState": "Enabled",
                        "resourceState": "Creating"
                      },
                      "tags": {
                        "key1": "value1",
                        "key2": "value2"
                      },
                      "type": "Microsoft.Network/NetworkExperimentprofiles"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles": {
      "get": {
        "operationId": "NetworkExperimentProfiles_ListByResourceGroup",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/ProfileList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Gets a list of Network Experiment Profiles within a resource group under a subscription",
        "tags": [
          "NetworkExperimentProfiles"
        ],
        "x-ms-examples": {
          "List NetworkExperiment Profiles in a Resource Group": {
            "parameters": {
              "api-version": "2019-11-01",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/",
                      "location": "WestUs",
                      "name": "MyProfile",
                      "properties": {
                        "enabledState": "Enabled",
                        "resourceState": "Creating"
                      },
                      "tags": {
                        "key1": "value1",
                        "key2": "value2"
                      },
                      "type": "Microsoft.Network/NetworkExperimentprofiles"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}": {
      "delete": {
        "operationId": "NetworkExperimentProfiles_Delete",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Delete successful."
          },
          "202": {
            "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously."
          },
          "204": {
            "description": "No Content. The request has been accepted but the profile was not found."
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Deletes an NetworkExperiment Profile by ProfileName",
        "tags": [
          "NetworkExperimentProfiles"
        ],
        "x-ms-examples": {
          "Deletes an NetworkExperiment Profile by ProfileName": {
            "parameters": {
              "api-version": "2019-11-01",
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "operationId": "NetworkExperimentProfiles_Get",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/Profile"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Gets an NetworkExperiment Profile by ProfileName",
        "tags": [
          "NetworkExperimentProfiles"
        ],
        "x-ms-examples": {
          "Gets an NetworkExperiment Profile by Profile Id": {
            "parameters": {
              "api-version": "2019-11-01",
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile",
                  "location": "WestUs",
                  "name": "MyProfile",
                  "properties": {
                    "enabledState": "Enabled",
                    "resourceState": "Creating"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  }
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Updates an NetworkExperimentProfiles",
        "operationId": "NetworkExperimentProfiles_Update",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          },
          {
            "description": "The Profile Update Model",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ProfileUpdateModel"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK. successful operation",
            "schema": {
              "$ref": "#/definitions/Profile"
            }
          },
          "202": {
            "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.",
            "schema": {
              "$ref": "#/definitions/Profile"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Updates an NetworkExperimentProfiles by NetworkExperimentProfile name",
        "tags": [
          "NetworkExperimentProfiles"
        ],
        "x-ms-examples": {
          "Updates an Experiment": {
            "parameters": {
              "api-version": "2019-11-01",
              "parameters": {
                "properties": {
                  "enabledState": "Enabled"
                },
                "tags": {
                  "key1": "value1",
                  "key2": "value2"
                }
              },
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile",
                  "location": "WestUs",
                  "name": "MyProfile",
                  "properties": {
                    "enabledState": "Enabled",
                    "resourceState": "Creating"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  },
                  "type": "Microsoft.Network/NetworkExperimentprofiles"
                }
              },
              "202": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile",
                  "location": "WestUs",
                  "name": "MyProfile",
                  "properties": {
                    "enabledState": "Enabled",
                    "resourceState": "Creating"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  },
                  "type": "Microsoft.Network/NetworkExperimentprofiles"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "put": {
        "operationId": "NetworkExperimentProfiles_CreateOrUpdate",
        "parameters": [
          {
            "$ref": "#/parameters/ProfileNameParameter"
          },
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "description": "An Network Experiment Profile",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/Profile"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK. The request has succeeded.",
            "schema": {
              "$ref": "#/definitions/Profile"
            }
          },
          "201": {
            "description": "Created. The request has been fulfilled and a new protection policy has been created.",
            "schema": {
              "$ref": "#/definitions/Profile"
            }
          },
          "202": {
            "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.",
            "schema": {
              "$ref": "#/definitions/Profile"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Creates an NetworkExperiment Profile",
        "tags": [
          "NetworkExperimentProfiles"
        ],
        "x-ms-examples": {
          "Creates an NetworkExperiment Profile in a Resource Group": {
            "parameters": {
              "api-version": "2019-11-01",
              "parameters": {
                "location": "WestUs",
                "properties": {
                  "enabledState": "Enabled"
                }
              },
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile",
                  "location": "WestUs",
                  "name": "MyProfile",
                  "properties": {
                    "enabledState": "Enabled",
                    "resourceState": "Creating"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  },
                  "type": "Microsoft.Network/NetworkExperimentprofiles"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile",
                  "location": "WestUs",
                  "name": "MyProfile",
                  "properties": {
                    "enabledState": "Enabled",
                    "resourceState": "Creating"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  },
                  "type": "Microsoft.Network/NetworkExperimentprofiles"
                }
              },
              "202": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile",
                  "location": "WestUs",
                  "name": "MyProfile",
                  "properties": {
                    "enabledState": "Enabled",
                    "resourceState": "Creating"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  },
                  "type": "Microsoft.Network/NetworkExperimentprofiles"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments": {
      "get": {
        "operationId": "Experiments_ListByProfile",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/ExperimentList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Gets a list of Experiments",
        "tags": [
          "Experiments"
        ],
        "x-ms-examples": {
          "Gets a list of Experiments": {
            "parameters": {
              "api-version": "2019-11-01",
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subId/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile/Experiments",
                      "name": "MyExperiment",
                      "properties": {
                        "description": "this is my first experiment!",
                        "enabledState": "Enabled",
                        "endpointA": {
                          "endpoint": "endpointA.net",
                          "name": "endpoint A"
                        },
                        "endpointB": {
                          "endpoint": "endpointB.net",
                          "name": "endpoint B"
                        },
                        "resourceState": "Creating",
                        "scriptFileUri": "www.myScript.com",
                        "status": "ongoing"
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}": {
      "delete": {
        "operationId": "Experiments_Delete",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          },
          {
            "$ref": "#/parameters/ExperimentNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Delete successful."
          },
          "202": {
            "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously."
          },
          "204": {
            "description": "No Content. The request has been accepted but the policy was not found."
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Deletes an Experiment",
        "tags": [
          "Experiments"
        ],
        "x-ms-examples": {
          "Deletes an Experiment": {
            "parameters": {
              "api-version": "2019-11-01",
              "experimentName": "MyExperiment",
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "operationId": "Experiments_Get",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          },
          {
            "$ref": "#/parameters/ExperimentNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/Experiment"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Gets an Experiment by ExperimentName",
        "tags": [
          "Experiments"
        ],
        "x-ms-examples": {
          "Gets an Experiment by ExperimentName": {
            "parameters": {
              "api-version": "2019-11-01",
              "experimentName": "MyExperiment",
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile/Experiments/MyExperiment",
                  "location": "WestUs",
                  "name": "MyExperiment",
                  "properties": {
                    "description": "this is my first experiment!",
                    "enabledState": "Enabled",
                    "endpointA": {
                      "endpoint": "endpointA.net",
                      "name": "endpoint A"
                    },
                    "endpointB": {
                      "endpoint": "endpointB.net",
                      "name": "endpoint B"
                    },
                    "resourceState": "Creating",
                    "scriptFileUri": "www.myScript.com",
                    "status": "ongoing"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  }
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Updates an Experiment",
        "operationId": "Experiments_Update",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          },
          {
            "$ref": "#/parameters/ExperimentNameParameter"
          },
          {
            "description": "The Experiment Update Model",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ExperimentUpdateModel"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK. successful operation",
            "schema": {
              "$ref": "#/definitions/Experiment"
            }
          },
          "202": {
            "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.",
            "schema": {
              "$ref": "#/definitions/Experiment"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Updates an Experiment by Experiment id",
        "tags": [
          "Experiments"
        ],
        "x-ms-examples": {
          "Updates an Experiment": {
            "parameters": {
              "api-version": "2019-11-01",
              "experimentName": "MyExperiment",
              "parameters": {
                "properties": {
                  "description": "string",
                  "enabledState": "Enabled"
                }
              },
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile/Experiments/MyExperiment",
                  "location": "WestUs",
                  "name": "MyExperiment",
                  "properties": {
                    "description": "this is my first experiment!",
                    "enabledState": "Enabled",
                    "endpointA": {
                      "endpoint": "endpointA.net",
                      "name": "endpoint A"
                    },
                    "endpointB": {
                      "endpoint": "endpointB.net",
                      "name": "endpoint B"
                    },
                    "resourceState": "Creating",
                    "scriptFileUri": "www.myScript.com",
                    "status": "ongoing"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  },
                  "type": "Microsoft.Network/NetworkExperimentprofiles"
                }
              },
              "202": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile/Experiments/MyExperiment",
                  "location": "WestUs",
                  "name": "MyExperiment",
                  "properties": {
                    "description": "this is my first experiment!",
                    "enabledState": "Enabled",
                    "endpointA": {
                      "endpoint": "endpointA.net",
                      "name": "endpoint A"
                    },
                    "endpointB": {
                      "endpoint": "endpointB.net",
                      "name": "endpoint B"
                    },
                    "resourceState": "Creating",
                    "scriptFileUri": "www.myScript.com",
                    "status": "ongoing"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  },
                  "type": "Microsoft.Network/NetworkExperimentprofiles"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "put": {
        "operationId": "Experiments_CreateOrUpdate",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          },
          {
            "$ref": "#/parameters/ExperimentNameParameter"
          },
          {
            "description": "The Experiment resource",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/Experiment"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK. The request has succeeded.",
            "schema": {
              "$ref": "#/definitions/Experiment"
            }
          },
          "201": {
            "description": "Created. The request has been fulfilled and a new experiment has been created.",
            "schema": {
              "$ref": "#/definitions/Experiment"
            }
          },
          "202": {
            "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.",
            "schema": {
              "$ref": "#/definitions/Experiment"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Creates or updates an Experiment",
        "tags": [
          "Experiments"
        ],
        "x-ms-examples": {
          "Creates an Experiment": {
            "parameters": {
              "api-version": "2019-11-01",
              "experimentName": "MyExperiment",
              "parameters": {
                "properties": {
                  "description": "this is my first experiment!",
                  "enabledState": "Enabled",
                  "endpointA": {
                    "endpoint": "endpointA.net",
                    "name": "endpoint A"
                  },
                  "endpointB": {
                    "endpoint": "endpointB.net",
                    "name": "endpoint B"
                  }
                }
              },
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile/Experiments/MyExperiment",
                  "location": "WestUs",
                  "name": "MyExperiment",
                  "properties": {
                    "description": "this is my first experiment!",
                    "enabledState": "Enabled",
                    "endpointA": {
                      "endpoint": "endpointA.net",
                      "name": "endpoint A"
                    },
                    "endpointB": {
                      "endpoint": "endpointB.net",
                      "name": "endpoint B"
                    },
                    "resourceState": "Creating",
                    "scriptFileUri": "www.myScript.com",
                    "status": "ongoing"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  }
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile/Experiments/MyExperiment",
                  "location": "WestUs",
                  "name": "MyExperiment",
                  "properties": {
                    "description": "this is my first experiment!",
                    "enabledState": "Enabled",
                    "endpointA": {
                      "endpoint": "endpointA.net",
                      "name": "endpoint A"
                    },
                    "endpointB": {
                      "endpoint": "endpointB.net",
                      "name": "endpoint B"
                    },
                    "resourceState": "Creating",
                    "scriptFileUri": "www.myScript.com",
                    "status": "ongoing"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  }
                }
              },
              "202": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile/Experiments/MyExperiment",
                  "location": "WestUs",
                  "name": "MyExperiment",
                  "properties": {
                    "description": "this is my first experiment!",
                    "enabledState": "Enabled",
                    "endpointA": {
                      "endpoint": "endpointA.net",
                      "name": "endpoint A"
                    },
                    "endpointB": {
                      "endpoint": "endpointB.net",
                      "name": "endpoint B"
                    },
                    "resourceState": "Creating",
                    "scriptFileUri": "www.myScript.com",
                    "status": "ongoing"
                  },
                  "tags": {
                    "key1": "value1",
                    "key2": "value2"
                  }
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}/LatencyScorecard": {
      "get": {
        "operationId": "Reports_GetLatencyScorecards",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          },
          {
            "$ref": "#/parameters/ExperimentNameParameter"
          },
          {
            "description": "The end DateTime of the Latency Scorecard in UTC",
            "in": "query",
            "name": "endDateTimeUTC",
            "required": false,
            "type": "string"
          },
          {
            "description": "The country associated with the Latency Scorecard. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html",
            "in": "query",
            "name": "country",
            "required": false,
            "type": "string"
          },
          {
            "description": "The aggregation interval of the Latency Scorecard",
            "enum": [
              "Daily",
              "Weekly",
              "Monthly"
            ],
            "in": "query",
            "name": "aggregationInterval",
            "required": true,
            "type": "string",
            "x-ms-enum": {
              "modelAsString": true,
              "name": "latencyScorecardAggregationInterval"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/LatencyScorecard"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Gets a Latency Scorecard for a given Experiment",
        "tags": [
          "Reports"
        ],
        "x-ms-examples": {
          "Gets a Latency Scorecard for a given Experiment": {
            "parameters": {
              "aggregationInterval": "Daily",
              "api-version": "2019-11-01",
              "experimentName": "MyExperiment",
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile/Experiments/MyExperiment/LatencyScorecard",
                  "name": "DailyLatencyScorecard",
                  "properties": {
                    "country": "USA",
                    "description": "This scorecard is the latency scorecard, aggregated over a day",
                    "endDateTimeUTC": "2019-09-21T17:32:28Z",
                    "endpointA": "https://endpointA.com",
                    "endpointB": "https://endpoingB.com",
                    "startDateTimeUTC": "2019-07-21T17:32:28Z"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}/Timeseries": {
      "get": {
        "operationId": "Reports_GetTimeseries",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          },
          {
            "$ref": "#/parameters/ExperimentNameParameter"
          },
          {
            "description": "The start DateTime of the Timeseries in UTC",
            "format": "date-time",
            "in": "query",
            "name": "startDateTimeUTC",
            "required": true,
            "type": "string"
          },
          {
            "description": "The end DateTime of the Timeseries in UTC",
            "format": "date-time",
            "in": "query",
            "name": "endDateTimeUTC",
            "required": true,
            "type": "string"
          },
          {
            "description": "The aggregation interval of the Timeseries",
            "enum": [
              "Hourly",
              "Daily"
            ],
            "in": "query",
            "name": "aggregationInterval",
            "required": true,
            "type": "string",
            "x-ms-enum": {
              "modelAsString": true,
              "name": "timeseriesAggregationInterval"
            }
          },
          {
            "description": "The type of Timeseries",
            "enum": [
              "MeasurementCounts",
              "LatencyP50",
              "LatencyP75",
              "LatencyP95"
            ],
            "in": "query",
            "name": "timeseriesType",
            "required": true,
            "type": "string",
            "x-ms-enum": {
              "modelAsString": true,
              "name": "timeseriesType"
            }
          },
          {
            "description": "The specific endpoint",
            "in": "query",
            "name": "endpoint",
            "required": false,
            "type": "string"
          },
          {
            "description": "The country associated with the Timeseries. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html",
            "in": "query",
            "name": "country",
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/Timeseries"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Gets a Timeseries for a given Experiment",
        "tags": [
          "Reports"
        ],
        "x-ms-examples": {
          "Gets a Timeseries for a given Experiment": {
            "parameters": {
              "aggregationInterval": "Hourly",
              "api-version": "2019-11-01",
              "endDateTimeUTC": "2019-09-21T17:32:28Z",
              "experimentName": "MyExperiment",
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "startDateTimeUTC": "2019-07-21T17:32:28Z",
              "subscriptionId": "subid",
              "timeseriesType": "MeasurementCounts"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/MyResourceGroup/providers/Microsoft.Network/NetworkExperimentProfiles/MyProfile/Experiments/MyExperiment/Timeseries",
                  "properties": {
                    "aggregationInterval": "Hourly",
                    "country": "United States",
                    "endDateTimeUTC": "2019-08-02",
                    "endpoint": "https://endpointA.com",
                    "startDateTimeUTC": "2019-07-29",
                    "timeseriesData": [
                      {
                        "dateTimeUTC": "2019-07-22T17:32:28Z",
                        "value": 79
                      }
                    ],
                    "timeseriesType": "MeasurementCounts"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/PreconfiguredEndpoints": {
      "get": {
        "operationId": "PreconfiguredEndpoints_List",
        "parameters": [
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/ProfileNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK. The request has succeeded.",
            "schema": {
              "$ref": "#/definitions/PreconfiguredEndpointList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Gets a list of Preconfigured Endpoints",
        "tags": [
          "PreconfiguredEndpoints"
        ],
        "x-ms-examples": {
          "Gets a list of Preconfigured Endpoints": {
            "parameters": {
              "api-version": "2019-11-01",
              "profileName": "MyProfile",
              "resourceGroupName": "MyResourceGroup",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "nextLink": "string",
                  "value": [
                    {
                      "name": "Endpoint 1",
                      "properties": {
                        "backend": "WESTUS",
                        "description": "this is the endpoint 1 preconfigured endpoint.",
                        "endpoint": "endpoint1.net",
                        "endpointType": "AFD"
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    }
  },
  "definitions": {
    "Endpoint": {
      "description": "Defines the endpoint properties",
      "properties": {
        "endpoint": {
          "description": "The endpoint URL",
          "type": "string"
        },
        "name": {
          "description": "The name of the endpoint",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ErrorResponse": {
      "description": "Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message.",
      "properties": {
        "code": {
          "description": "Error code.",
          "readOnly": true,
          "type": "string"
        },
        "message": {
          "description": "Error message indicating why the operation failed.",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "Experiment": {
      "allOf": [
        {
          "description": "Common resource representation.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "readOnly": true,
              "type": "string"
            },
            "location": {
              "description": "Resource location.",
              "type": "string"
            },
            "name": {
              "description": "Resource name.",
              "readOnly": true,
              "type": "string"
            },
            "tags": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Resource tags.",
              "type": "object"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Defines the properties of an Experiment",
      "properties": {
        "name": {
          "description": "The name of the Experiment",
          "readOnly": true,
          "type": "string"
        },
        "properties": {
          "$ref": "#/definitions/ExperimentProperties",
          "description": "The properties of an Experiment",
          "x-ms-client-flatten": true
        }
      }
    },
    "ExperimentList": {
      "description": "Defines a list of Experiments. It contains a list of Experiment objects and a URL link to get the next set of results.",
      "properties": {
        "nextLink": {
          "description": "URL to get the next set of Experiment objects if there are any.",
          "type": "string"
        },
        "value": {
          "description": "List of Experiments within a resource group.",
          "items": {
            "$ref": "#/definitions/Experiment"
          },
          "readOnly": true,
          "type": "array"
        }
      }
    },
    "ExperimentProperties": {
      "description": "Defines the properties of an experiment",
      "properties": {
        "description": {
          "description": "The description of the details or intents of the Experiment",
          "type": "string"
        },
        "enabledState": {
          "description": "The state of the Experiment",
          "enum": [
            "Enabled",
            "Disabled"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "state"
          }
        },
        "endpointA": {
          "$ref": "#/definitions/Endpoint",
          "description": "The endpoint A of an experiment"
        },
        "endpointB": {
          "$ref": "#/definitions/Endpoint",
          "description": "The endpoint B of an experiment"
        },
        "resourceState": {
          "$ref": "#/definitions/NetworkExperimentResourceState",
          "description": "Resource status."
        },
        "scriptFileUri": {
          "description": "The uri to the Script used in the Experiment",
          "readOnly": true,
          "type": "string"
        },
        "status": {
          "description": "The description of Experiment status from the server side",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "ExperimentUpdateModel": {
      "description": "Defines modifiable attributes of an Experiment",
      "properties": {
        "properties": {
          "$ref": "#/definitions/ExperimentUpdateProperties",
          "description": "The properties of a Profile",
          "x-ms-client-flatten": true
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Resource tags.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "ExperimentUpdateProperties": {
      "description": "Defines the properties of an experiment",
      "properties": {
        "description": {
          "description": "The description of the intent or details of the Experiment",
          "type": "string"
        },
        "enabledState": {
          "description": "The state of the Experiment",
          "enum": [
            "Enabled",
            "Disabled"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "state"
          }
        }
      },
      "type": "object"
    },
    "LatencyMetric": {
      "description": "Defines the properties of a latency metric used in the latency scorecard",
      "properties": {
        "aCLower95CI": {
          "description": "The lower end of the 95% confidence interval for endpoint A",
          "readOnly": true,
          "type": "number"
        },
        "aHUpper95CI": {
          "description": "The upper end of the 95% confidence interval for endpoint A",
          "readOnly": true,
          "type": "number"
        },
        "aValue": {
          "description": "The metric value of the A endpoint",
          "readOnly": true,
          "type": "number"
        },
        "bCLower95CI": {
          "description": "The lower end of the 95% confidence interval for endpoint B",
          "readOnly": true,
          "type": "number"
        },
        "bUpper95CI": {
          "description": "The upper end of the 95% confidence interval for endpoint B",
          "readOnly": true,
          "type": "number"
        },
        "bValue": {
          "description": "The metric value of the B endpoint",
          "readOnly": true,
          "type": "number"
        },
        "delta": {
          "description": "The difference in value between endpoint A and B",
          "readOnly": true,
          "type": "number"
        },
        "deltaPercent": {
          "description": "The percent difference between endpoint A and B",
          "readOnly": true,
          "type": "number"
        },
        "endDateTimeUTC": {
          "description": "The end time of the Latency Scorecard in UTC",
          "readOnly": true,
          "type": "string"
        },
        "name": {
          "description": "The name of the Latency Metric",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "LatencyScorecard": {
      "allOf": [
        {
          "description": "Common resource representation.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "readOnly": true,
              "type": "string"
            },
            "location": {
              "description": "Resource location.",
              "type": "string"
            },
            "name": {
              "description": "Resource name.",
              "readOnly": true,
              "type": "string"
            },
            "tags": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Resource tags.",
              "type": "object"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Defines the LatencyScorecard",
      "properties": {
        "properties": {
          "$ref": "#/definitions/LatencyScorecardProperties",
          "description": "The properties of a latency scorecard",
          "x-ms-client-flatten": true
        }
      }
    },
    "LatencyScorecardProperties": {
      "description": "Defines a the properties of a Latency Scorecard",
      "properties": {
        "country": {
          "description": "The country associated with the Latency Scorecard. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html",
          "readOnly": true,
          "type": "string"
        },
        "description": {
          "description": "The description of the Latency Scorecard",
          "readOnly": true,
          "type": "string"
        },
        "endDateTimeUTC": {
          "description": "The end time of the Latency Scorecard in UTC",
          "format": "date-time",
          "readOnly": true,
          "type": "string"
        },
        "endpointA": {
          "description": "The A endpoint in the scorecard",
          "readOnly": true,
          "type": "string"
        },
        "endpointB": {
          "description": "The B endpoint in the scorecard",
          "readOnly": true,
          "type": "string"
        },
        "id": {
          "description": "The unique identifier of the Latency Scorecard",
          "readOnly": true,
          "type": "string"
        },
        "latencyMetrics": {
          "description": "The latency metrics of the Latency Scorecard",
          "items": {
            "$ref": "#/definitions/LatencyMetric"
          },
          "type": "array"
        },
        "name": {
          "description": "The name of the Latency Scorecard",
          "readOnly": true,
          "type": "string"
        },
        "startDateTimeUTC": {
          "description": "The start time of the Latency Scorecard in UTC",
          "format": "date-time",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "NetworkExperimentResourceState": {
      "description": "Defines the server side resource status",
      "enum": [
        "Creating",
        "Enabling",
        "Enabled",
        "Disabling",
        "Disabled",
        "Deleting"
      ],
      "readOnly": true,
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "NetworkExperimentResourceState"
      }
    },
    "PreconfiguredEndpoint": {
      "allOf": [
        {
          "description": "Common resource representation.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "readOnly": true,
              "type": "string"
            },
            "location": {
              "description": "Resource location.",
              "type": "string"
            },
            "name": {
              "description": "Resource name.",
              "readOnly": true,
              "type": "string"
            },
            "tags": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Resource tags.",
              "type": "object"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Defines the properties of a preconfigured endpoint",
      "properties": {
        "name": {
          "description": "The name of the endpoint",
          "type": "string"
        },
        "properties": {
          "$ref": "#/definitions/PreconfiguredEndpointProperties",
          "description": "The properties of a preconfiguredEndpoint",
          "x-ms-client-flatten": true
        }
      }
    },
    "PreconfiguredEndpointList": {
      "description": "Defines a list of preconfigured endpoints.",
      "properties": {
        "nextLink": {
          "description": "URL to get the next set of PreconfiguredEndpoints if there are any.",
          "type": "string"
        },
        "value": {
          "description": "List of PreconfiguredEndpoints supported by NetworkExperiment.",
          "items": {
            "$ref": "#/definitions/PreconfiguredEndpoint"
          },
          "readOnly": true,
          "type": "array"
        }
      }
    },
    "PreconfiguredEndpointProperties": {
      "description": "Defines the properties of a preconfigured endpoint",
      "properties": {
        "backend": {
          "description": "The preconfigured endpoint backend",
          "type": "string"
        },
        "description": {
          "description": "The description of the endpoint",
          "type": "string"
        },
        "endpoint": {
          "description": "The endpoint that is preconfigured",
          "type": "string"
        },
        "endpointType": {
          "description": "The type of endpoint",
          "enum": [
            "AFD",
            "AzureRegion",
            "CDN",
            "ATM"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "endpointType"
          }
        }
      },
      "type": "object"
    },
    "Profile": {
      "allOf": [
        {
          "description": "Common resource representation.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "readOnly": true,
              "type": "string"
            },
            "location": {
              "description": "Resource location.",
              "type": "string"
            },
            "name": {
              "description": "Resource name.",
              "readOnly": true,
              "type": "string"
            },
            "tags": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Resource tags.",
              "type": "object"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Defines an Network Experiment Profile and lists of Experiments",
      "properties": {
        "etag": {
          "description": "Gets a unique read-only string that changes whenever the resource is updated.",
          "type": "string"
        },
        "name": {
          "description": "The name of the Profile",
          "type": "string"
        },
        "properties": {
          "$ref": "#/definitions/ProfileProperties",
          "description": "The properties of a Profile",
          "x-ms-client-flatten": true
        }
      }
    },
    "ProfileList": {
      "description": "Defines a list of Profiles. It contains a list of Profile objects and a URL link to get the next set of results.",
      "properties": {
        "nextLink": {
          "description": "URL to get the next set of Profile objects if there are any.",
          "type": "string"
        },
        "value": {
          "description": "List of Profiles within a resource group.",
          "items": {
            "$ref": "#/definitions/Profile"
          },
          "readOnly": true,
          "type": "array"
        }
      }
    },
    "ProfileProperties": {
      "description": "Defines the properties of an experiment",
      "properties": {
        "enabledState": {
          "description": "The state of the Experiment",
          "enum": [
            "Enabled",
            "Disabled"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "state"
          }
        },
        "resourceState": {
          "$ref": "#/definitions/NetworkExperimentResourceState",
          "description": "Resource status."
        }
      },
      "type": "object"
    },
    "ProfileUpdateModel": {
      "description": "Defines modifiable attributes of a Profile",
      "properties": {
        "properties": {
          "$ref": "#/definitions/ProfileUpdateProperties",
          "description": "The properties of a Profile",
          "x-ms-client-flatten": true
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Resource tags.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "ProfileUpdateProperties": {
      "description": "Defines the properties of an experiment",
      "properties": {
        "enabledState": {
          "description": "The enabled state of the Profile",
          "enum": [
            "Enabled",
            "Disabled"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "state"
          }
        }
      },
      "type": "object"
    },
    "Timeseries": {
      "allOf": [
        {
          "description": "Common resource representation.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "readOnly": true,
              "type": "string"
            },
            "location": {
              "description": "Resource location.",
              "type": "string"
            },
            "name": {
              "description": "Resource name.",
              "readOnly": true,
              "type": "string"
            },
            "tags": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Resource tags.",
              "type": "object"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Defines the Timeseries",
      "properties": {
        "properties": {
          "$ref": "#/definitions/TimeseriesProperties",
          "description": "The properties of a Timeseries",
          "x-ms-client-flatten": true
        }
      }
    },
    "TimeseriesDataPoint": {
      "description": "Defines a timeseries datapoint used in a timeseries",
      "properties": {
        "dateTimeUTC": {
          "description": "The DateTime of the Timeseries data point in UTC",
          "type": "string"
        },
        "value": {
          "description": "The Value of the Timeseries data point",
          "type": "number"
        }
      },
      "type": "object"
    },
    "TimeseriesProperties": {
      "description": "Defines the properties of a timeseries",
      "properties": {
        "aggregationInterval": {
          "description": "The aggregation interval of the Timeseries",
          "enum": [
            "Hourly",
            "Daily"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "aggregationInterval"
          }
        },
        "country": {
          "description": "The country associated with the Timeseries. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html",
          "type": "string"
        },
        "endDateTimeUTC": {
          "description": "The end DateTime of the Timeseries in UTC",
          "type": "string"
        },
        "endpoint": {
          "description": "The endpoint associated with the Timeseries data point",
          "type": "string"
        },
        "startDateTimeUTC": {
          "description": "The start DateTime of the Timeseries in UTC",
          "type": "string"
        },
        "timeseriesData": {
          "description": "The set of data points for the timeseries",
          "items": {
            "$ref": "#/definitions/TimeseriesDataPoint"
          },
          "type": "array"
        },
        "timeseriesType": {
          "description": "The type of Timeseries",
          "enum": [
            "MeasurementCounts",
            "LatencyP50",
            "LatencyP75",
            "LatencyP95"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "timeseriesType"
          }
        }
      },
      "type": "object"
    }
  }
}