From 693f05974e91d4e91aec0fcab2027155f5b0944f Mon Sep 17 00:00:00 2001 From: Zach Rathbun Date: Fri, 18 Sep 2020 20:39:34 -0700 Subject: [PATCH 01/37] [Hub Generated] Review request for Microsoft.Consumption to add version stable/2019-10-01 (#10669) * Add reservationid and reservationorderid parameters * Fix parameter name * Fix wording * White space fix to trigger new checks --- .../stable/2019-10-01/consumption.json | 40 ++++++++++++++++++- ...etailsByBillingProfileIdReservationId.json | 36 +++++++++++++++++ ...thlyWithBillingProfileIdReservationId.json | 34 ++++++++++++++++ 3 files changed, 109 insertions(+), 1 deletion(-) create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingProfileIdReservationId.json create mode 100644 specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json index 071d5f14e011..ee96fd1212d6 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/consumption.json @@ -792,6 +792,9 @@ }, "ReservationSummariesMonthlyWithBillingProfileId": { "$ref": "./examples/ReservationSummariesMonthlyWithBillingProfileId.json" + }, + "ReservationSummariesMonthlyWithBillingProfileIdReservationId": { + "$ref": "./examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json" } }, "parameters": [ @@ -824,6 +827,22 @@ "required": false, "type": "string" }, + { + "name": "reservationId", + "in": "query", + "description": "Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "reservationOrderId", + "in": "query", + "description": "Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, { "$ref": "#/parameters/apiVersionParameter" } @@ -868,7 +887,7 @@ }, { "name": "$filter", - "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ", + "description": "Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", "in": "query", "required": true, "type": "string" @@ -964,6 +983,9 @@ }, "ReservationDetailsByBillingProfileId": { "$ref": "./examples/ReservationDetailsByBillingProfileId.json" + }, + "ReservationDetailsByBillingProfileIdReservationId": { + "$ref": "./examples/ReservationDetailsByBillingProfileIdReservationId.json" } }, "parameters": [ @@ -993,6 +1015,22 @@ "required": false, "type": "string" }, + { + "name": "reservationId", + "in": "query", + "description": "Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "name": "reservationOrderId", + "in": "query", + "description": "Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, { "$ref": "#/parameters/apiVersionParameter" } diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingProfileIdReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingProfileIdReservationId.json new file mode 100644 index 000000000000..b6c7a8324acf --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationDetailsByBillingProfileIdReservationId.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "startDate": "2019-09-01", + "endDate": "2019-10-31", + "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b", + "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationDetails/reservationDetails_Id1", + "name": "reservationDetails_Id1", + "type": "Microsoft.Consumption/reservationDetails", + "tags": null, + "properties": { + "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc", + "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b", + "usageDate": "2019-09-30T00:00:00-08:00", + "skuName": "Standard_D2s_v3", + "instanceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sqlh1/providers/microsoft.compute/virtualmachines/sqlh1", + "totalReservedQuantity": 0, + "reservedHours": 48, + "usedHours": 0.6, + "instanceFlexibilityGroup": "DSv3 Series", + "instanceFlexibilityRatio": "1" + } + } + ] + } + } + } +} diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json new file mode 100644 index 000000000000..4d7621b008d8 --- /dev/null +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesMonthlyWithBillingProfileIdReservationId.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", + "grain": "monthly", + "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b", + "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579/providers/Microsoft.Consumption/reservationSummaries/reservationSummaries_Id1", + "name": "reservationSummaries_Id1", + "type": "Microsoft.Consumption/reservationSummaries", + "tags": null, + "properties": { + "reservationOrderId": "9f39ba10-794f-4dcb-8f4b-8d0cb47c27dc", + "reservationId": "1c6b6358-709f-484c-85f1-72e862a0cf3b", + "skuName": "Standard_B1s", + "reservedHours": 720, + "usageDate": "2018-09-01T00:00:00-07:00", + "usedHours": 0, + "minUtilizationPercentage": 0, + "avgUtilizationPercentage": 0, + "maxUtilizationPercentage": 0 + } + } + ] + } + } + } +} From 3e20eea84f0618cfa0b9b455a30b94484ccd6eed Mon Sep 17 00:00:00 2001 From: dochung4 <40577926+dochung4@users.noreply.github.com> Date: Fri, 18 Sep 2020 22:51:34 -0700 Subject: [PATCH 02/37] Removed maximum for DedicatedHostGroup (#10813) --- .../Microsoft.Compute/stable/2020-06-01/compute.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-06-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-06-01/compute.json index 817f4c62ac26..7bd220c78877 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-06-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-06-01/compute.json @@ -6739,7 +6739,6 @@ "type": "integer", "format": "int32", "minimum": 1, - "maximum": 3, "description": "Number of fault domains that the host group can span." }, "hosts": { @@ -6907,7 +6906,6 @@ "type": "integer", "format": "int32", "minimum": 0, - "maximum": 2, "description": "Fault domain of the dedicated host within a dedicated host group." }, "autoReplaceOnFailure": { From 50b45006cd046fa89d3e46884332b22867de92d4 Mon Sep 17 00:00:00 2001 From: Liran Chen <1437075+liranc@users.noreply.github.com> Date: Mon, 21 Sep 2020 05:45:36 +0300 Subject: [PATCH 03/37] aligned deivceSecurityGroups to stable (#10774) * aligned deivceSecurityGroups to stable * Fix tests * Fixed api version Co-authored-by: Liran Chen --- .../deviceSecurityGroups.json | 355 +++++++------ .../PutDeviceSecurityGroups_example.json | 5 - .../PutDeviceSecurityGroups_example.json | 473 +++++++----------- 3 files changed, 386 insertions(+), 447 deletions(-) diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json index fd08950135a9..655474e9e7e8 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json @@ -37,14 +37,14 @@ "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups": { "get": { "x-ms-examples": { - "List all device security groups for the specified IoT hub resource": { + "List all device security groups for the specified IoT Hub resource": { "$ref": "./examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json" } }, "tags": [ "DeviceSecurityGroups" ], - "description": "Gets the list of device security groups for the specified IoT hub resource.", + "description": "Use this method get the list of device security groups for the specified IoT Hub resource.", "operationId": "DeviceSecurityGroups_List", "parameters": [ { @@ -76,14 +76,14 @@ "/{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}": { "get": { "x-ms-examples": { - "Get an device security group for the specified IoT hub resource": { + "Get a device security group for the specified IoT Hub resource": { "$ref": "./examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json" } }, "tags": [ "DeviceSecurityGroups" ], - "description": "Gets the device security group for the specified IoT hub resource.", + "description": "Use this method to get the device security group for the specified IoT Hub resource.", "operationId": "DeviceSecurityGroups_Get", "parameters": [ { @@ -98,7 +98,7 @@ ], "responses": { "200": { - "description": "Successful request to get security group.", + "description": "Successful request to get device security group.", "schema": { "$ref": "#/definitions/DeviceSecurityGroup" } @@ -120,7 +120,7 @@ "tags": [ "DeviceSecurityGroups" ], - "description": "Creates or updates the device security group on a specified IoT hub resource.", + "description": "Use this method to creates or updates the device security group on a specified IoT Hub resource.", "operationId": "DeviceSecurityGroups_CreateOrUpdate", "parameters": [ { @@ -138,13 +138,13 @@ ], "responses": { "200": { - "description": "Security group was updated", + "description": "Security group was updated.", "schema": { "$ref": "#/definitions/DeviceSecurityGroup" } }, "201": { - "description": "Security group was created", + "description": "Security group was created.", "schema": { "$ref": "#/definitions/DeviceSecurityGroup" } @@ -159,14 +159,14 @@ }, "delete": { "x-ms-examples": { - "Delete a device security group for the specified IoT hub resource": { + "Delete a device security group for the specified IoT Hub resource": { "$ref": "./examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json" } }, "tags": [ "DeviceSecurityGroups" ], - "description": "Deletes the security group", + "description": "User this method to deletes the device security group.", "operationId": "DeviceSecurityGroups_Delete", "parameters": [ { @@ -238,7 +238,7 @@ "properties": { "thresholdRules": { "type": "array", - "description": "A list of threshold custom alert rules.", + "description": "The list of custom alert threshold rules.", "items": { "type": "object", "$ref": "#/definitions/ThresholdCustomAlertRule" @@ -246,7 +246,7 @@ }, "timeWindowRules": { "type": "array", - "description": "A list of time window custom alert rules.", + "description": "The list of custom alert time-window rules.", "items": { "type": "object", "$ref": "#/definitions/TimeWindowCustomAlertRule" @@ -254,7 +254,7 @@ }, "allowlistRules": { "type": "array", - "description": "A list of allow-list custom alert rules.", + "description": "The allow-list custom alert rules.", "items": { "type": "object", "$ref": "#/definitions/AllowlistCustomAlertRule" @@ -262,7 +262,7 @@ }, "denylistRules": { "type": "array", - "description": "A list of deny-list custom alert rules.", + "description": "The deny-list custom alert rules.", "items": { "type": "object", "$ref": "#/definitions/DenylistCustomAlertRule" @@ -272,7 +272,8 @@ }, "CustomAlertRule": { "type": "object", - "description": "A custom alert rule", + "description": "A custom alert rule.", + "discriminator": "ruleType", "properties": { "displayName": { "type": "string", @@ -286,7 +287,7 @@ }, "isEnabled": { "type": "boolean", - "description": "Whether the custom alert is enabled." + "description": "Status of the custom alert." }, "ruleType": { "type": "string", @@ -300,7 +301,7 @@ }, "ListCustomAlertRule": { "type": "object", - "description": "A List custom alert rule", + "description": "A List custom alert rule.", "allOf": [ { "$ref": "#/definitions/CustomAlertRule" @@ -309,7 +310,7 @@ "properties": { "valueType": { "type": "string", - "description": "The value type of the items in the list", + "description": "The value type of the items in the list.", "enum": [ "IpCidr", "String" @@ -334,7 +335,7 @@ }, "AllowlistCustomAlertRule": { "type": "object", - "description": "A custom alert rule that checks if a value (depends on the custom alert type) is allowed", + "description": "A custom alert rule that checks if a value (depends on the custom alert type) is allowed.", "allOf": [ { "$ref": "#/definitions/ListCustomAlertRule" @@ -347,42 +348,45 @@ "items": { "type": "string" } - }, - "ruleType": { - "type": "string", - "description": "The type of the custom alert rule.", - "enum": [ - "ConnectionToIpNotAllowed", - "LocalUserNotAllowed", - "ProcessNotAllowed" - ], - "x-ms-enum": { - "name": "ruleType", - "modelAsString": true, - "values": [ - { - "value": "ConnectionToIpNotAllowed", - "description": "Outbound connection to an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in CIDR notation." - }, - { - "value": "LocalUserNotAllowed", - "description": "Login by a local user that isn't allowed. Allow list consists of login names to allow." - }, - { - "value": "ProcessNotAllowed", - "description": "Execution of a process that isn't allowed. Allow list consists of process names to allow." - } - ] - } } }, "required": [ "allowlistValues" ] }, + "ConnectionToIpNotAllowed": { + "type": "object", + "description": "Outbound connection to an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in CIDR notation.", + "allOf": [ + { + "$ref": "#/definitions/AllowlistCustomAlertRule" + } + ], + "properties": {} + }, + "LocalUserNotAllowed": { + "type": "object", + "description": "Login by a local user that isn't allowed. Allow list consists of login names to allow.", + "allOf": [ + { + "$ref": "#/definitions/AllowlistCustomAlertRule" + } + ], + "properties": {} + }, + "ProcessNotAllowed": { + "type": "object", + "description": "Execution of a process that isn't allowed. Allow list consists of process names to allow.", + "allOf": [ + { + "$ref": "#/definitions/AllowlistCustomAlertRule" + } + ], + "properties": {} + }, "DenylistCustomAlertRule": { "type": "object", - "description": "A custom alert rule that checks if a value (depends on the custom alert type) is denied", + "description": "A custom alert rule that checks if a value (depends on the custom alert type) is denied.", "allOf": [ { "$ref": "#/definitions/ListCustomAlertRule" @@ -428,9 +432,6 @@ "type": "object", "description": "A custom alert rule that checks if the number of activities (depends on the custom alert type) in a time window is within the given range.", "allOf": [ - { - "$ref": "#/definitions/CustomAlertRule" - }, { "$ref": "#/definitions/ThresholdCustomAlertRule" } @@ -440,103 +441,171 @@ "type": "string", "description": "The time window size in iso8601 format.", "format": "duration" - }, - "ruleType": { - "type": "string", - "description": "The type of the custom alert rule.", - "enum": [ - "ActiveConnectionsNotInAllowedRange", - "AmqpC2DMessagesNotInAllowedRange", - "MqttC2DMessagesNotInAllowedRange", - "HttpC2DMessagesNotInAllowedRange", - "AmqpC2DRejectedMessagesNotInAllowedRange", - "MqttC2DRejectedMessagesNotInAllowedRange", - "HttpC2DRejectedMessagesNotInAllowedRange", - "AmqpD2CMessagesNotInAllowedRange", - "MqttD2CMessagesNotInAllowedRange", - "HttpD2CMessagesNotInAllowedRange", - "DirectMethodInvokesNotInAllowedRange", - "FailedLocalLoginsNotInAllowedRange", - "FileUploadsNotInAllowedRange", - "QueuePurgesNotInAllowedRange", - "TwinUpdatesNotInAllowedRange", - "UnauthorizedOperationsNotInAllowedRange" - ], - "x-ms-enum": { - "name": "ruleType", - "modelAsString": true, - "values": [ - { - "value": "ActiveConnectionsNotInAllowedRange", - "description": "Number of active connections is not in allowed range." - }, - { - "value": "AmqpC2DMessagesNotInAllowedRange", - "description": "Number of cloud to device messages (AMQP protocol) is not in allowed range." - }, - { - "value": "MqttC2DMessagesNotInAllowedRange", - "description": "Number of cloud to device messages (MQTT protocol) is not in allowed range." - }, - { - "value": "HttpC2DMessagesNotInAllowedRange", - "description": "Number of cloud to device messages (HTTP protocol) is not in allowed range." - }, - { - "value": "AmqpC2DRejectedMessagesNotInAllowedRange", - "description": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range." - }, - { - "value": "MqttC2DRejectedMessagesNotInAllowedRange", - "description": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range." - }, - { - "value": "HttpC2DRejectedMessagesNotInAllowedRange", - "description": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range." - }, - { - "value": "AmqpD2CMessagesNotInAllowedRange", - "description": "Number of device to cloud messages (AMQP protocol) is not in allowed range." - }, - { - "value": "MqttD2CMessagesNotInAllowedRange", - "description": "Number of device to cloud messages (MQTT protocol) is not in allowed range." - }, - { - "value": "HttpD2CMessagesNotInAllowedRange", - "description": "Number of device to cloud messages (HTTP protocol) is not in allowed range." - }, - { - "value": "DirectMethodInvokesNotInAllowedRange", - "description": "Number of direct method invokes is not in allowed range." - }, - { - "value": "FailedLocalLoginsNotInAllowedRange", - "description": "Number of failed local logins is not in allowed range." - }, - { - "value": "FileUploadsNotInAllowedRange", - "description": "Number of file uploads is not in allowed range." - }, - { - "value": "QueuePurgesNotInAllowedRange", - "description": "Number of device queue purges is not in allowed range." - }, - { - "value": "TwinUpdatesNotInAllowedRange", - "description": "Number of twin updates is not in allowed range." - }, - { - "value": "UnauthorizedOperationsNotInAllowedRange", - "description": "Number of unauthorized operations is not in allowed range." - } - ] - } } }, "required": [ "timeWindowSize" ] + }, + "ActiveConnectionsNotInAllowedRange": { + "type": "object", + "description": "Number of active connections is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "AmqpC2DMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of cloud to device messages (AMQP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "MqttC2DMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of cloud to device messages (MQTT protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "HttpC2DMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of cloud to device messages (HTTP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "AmqpC2DRejectedMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "MqttC2DRejectedMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "HttpC2DRejectedMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "AmqpD2CMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of device to cloud messages (AMQP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "MqttD2CMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of device to cloud messages (MQTT protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "HttpD2CMessagesNotInAllowedRange": { + "type": "object", + "description": "Number of device to cloud messages (HTTP protocol) is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "DirectMethodInvokesNotInAllowedRange": { + "type": "object", + "description": "Number of direct method invokes is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "FailedLocalLoginsNotInAllowedRange": { + "type": "object", + "description": "Number of failed local logins is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "FileUploadsNotInAllowedRange": { + "type": "object", + "description": "Number of file uploads is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "QueuePurgesNotInAllowedRange": { + "type": "object", + "description": "Number of device queue purges is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "TwinUpdatesNotInAllowedRange": { + "type": "object", + "description": "Number of twin updates is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} + }, + "UnauthorizedOperationsNotInAllowedRange": { + "type": "object", + "description": "Number of unauthorized operations is not in allowed range.", + "allOf": [ + { + "$ref": "#/definitions/TimeWindowCustomAlertRule" + } + ], + "properties": {} } }, "parameters": { @@ -545,7 +614,7 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the security group. Please notice that the name is case insensitive.", + "description": "The name of the device security group. Note that the name of the device security group is case insensitive.", "x-ms-parameter-location": "method" }, "DeviceSecurityGroup": { diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json index 9492bc79ea23..8d2070be53f6 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json @@ -4,15 +4,10 @@ "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub", "deviceSecurityGroupName": "samplesecuritygroup", "deviceSecurityGroup": { - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub/providers/Microsoft.Security/deviceSecurityGroups/samplesecuritygroup", - "name": "samplesecuritygroup", - "type": "Microsoft.Security/deviceSecurityGroups", "properties": { "timeWindowRules": [ { "ruleType": "ActiveConnectionsNotInAllowedRange", - "displayName": "Number of active connections is not in allowed range", - "description": "Get an alert when the number of active connections of a device in the time window is not in the allowed range", "isEnabled": true, "minThreshold": 0, "maxThreshold": 30, diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json index fee633534ef2..357a11a33ef3 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json @@ -1,22 +1,35 @@ { "parameters": { - "api-version": "2019-08-01", - "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub", - "deviceSecurityGroupName": "samplesecuritygroup", - "deviceSecurityGroup": { - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub/providers/Microsoft.Security/deviceSecurityGroups/samplesecuritygroup", - "name": "samplesecuritygroup", - "type": "Microsoft.Security/deviceSecurityGroups", + "api-version": "2017-08-01-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "MyGroup", + "solutionName": "default", + "iotSecuritySolutionData": { + "tags": {}, + "location": "East Us", "properties": { - "timeWindowRules": [ + "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", + "status": "Enabled", + "export": [], + "disabledDataSources": [], + "displayName": "Solution Default", + "iotHubs": [ + "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" + ], + "userDefinedResources": { + "query": "where type != \"microsoft.devices/iothubs\" | where name contains \"iot\"", + "querySubscriptions": [ + "075423e9-7d33-4166-8bdf-3920b04e3735" + ] + }, + "recommendationsConfiguration": [ { - "ruleType": "ActiveConnectionsNotInAllowedRange", - "displayName": "Number of active connections is not in allowed range", - "description": "Get an alert when the number of active connections of a device in the time window is not in the allowed range", - "isEnabled": true, - "minThreshold": 0, - "maxThreshold": 30, - "timeWindowSize": "PT05M" + "recommendationType": "IoT_OpenPorts", + "status": "Disabled" + }, + { + "recommendationType": "IoT_SharedCredentials", + "status": "Disabled" } ] } @@ -25,361 +38,223 @@ "responses": { "200": { "body": { - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub/providers/Microsoft.Security/deviceSecurityGroups/samplesecuritygroup", - "name": "samplesecuritygroup", - "type": "Microsoft.Security/deviceSecurityGroups", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/MyGroup/providers/Microsoft.Security/Locations/eastus/IoTSecuritySolutions/default", + "name": "default", + "type": "Microsoft.Security/IoTSecuritySolutions", + "location": "East Us", + "tags": {}, "properties": { - "thresholdRules": [], - "timeWindowRules": [ - { - "ruleType": "ActiveConnectionsNotInAllowedRange", - "displayName": "Number of active connections is not in allowed range", - "description": "Get an alert when the number of active connections of a device in the time window is not in the allowed range", - "isEnabled": true, - "minThreshold": 0, - "maxThreshold": 30, - "timeWindowSize": "PT05M" - }, - { - "ruleType": "AmqpC2DMessagesNotInAllowedRange", - "displayName": "Number of cloud to device messages (AMQP protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (AMQP protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" - }, + "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", + "status": "Enabled", + "export": [], + "disabledDataSources": [], + "displayName": "Solution Default", + "iotHubs": [ + "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" + ], + "userDefinedResources": { + "query": "where type != \"microsoft.devices/iothubs\" | where name contains \"iot\"", + "querySubscriptions": [ + "075423e9-7d33-4166-8bdf-3920b04e3735" + ] + }, + "autoDiscoveredResources": [ + "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735", + "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" + ], + "recommendationsConfiguration": [ { - "ruleType": "MqttC2DMessagesNotInAllowedRange", - "displayName": "Number of cloud to device messages (MQTT protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (MQTT protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_ACRAuthentication", + "name": "Service Principal Not Used with ACR", + "status": "Enabled" }, { - "ruleType": "HttpC2DMessagesNotInAllowedRange", - "displayName": "Number of cloud to device messages (HTTP protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (HTTP protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_AgentSendsUnutilizedMessages", + "name": "Agent sending underutilized messages", + "status": "TurnedOn" }, { - "ruleType": "AmqpC2DRejectedMessagesNotInAllowedRange", - "displayName": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (AMQP protocol) that were rejected by the device in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_Baseline", + "name": "Operating system (OS) baseline validation failure", + "status": "Enabled" }, { - "ruleType": "MqttC2DRejectedMessagesNotInAllowedRange", - "displayName": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (MQTT protocol) that were rejected by the device in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_EdgeHubMemOptimize", + "name": "Edge Hub memory can be optimized", + "status": "Enabled" }, { - "ruleType": "HttpC2DRejectedMessagesNotInAllowedRange", - "displayName": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (HTTP protocol) that were rejected by the device in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_EdgeLoggingOptions", + "name": "No Logging Configured for Edge Module", + "status": "Enabled" }, { - "ruleType": "AmqpD2CMessagesNotInAllowedRange", - "displayName": "Number of device to cloud messages (AMQP protocol) is not in allowed range", - "description": "Get an alert when the number of device to cloud messages (AMQP protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_InconsistentModuleSettings", + "name": "Module Settings Inconsistent in SecurityGroup", + "status": "Enabled" }, { - "ruleType": "MqttD2CMessagesNotInAllowedRange", - "displayName": "Number of device to cloud messages (MQTT protocol) is not in allowed range", - "description": "Get an alert when the number of device to cloud messages (MQTT protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_InstallAgent", + "name": "Install the Azure Security of Things Agent", + "status": "Enabled" }, { - "ruleType": "HttpD2CMessagesNotInAllowedRange", - "displayName": "Number of device to cloud messages (HTTP protocol) is not in allowed range", - "description": "Get an alert when the number of device to cloud messages (HTTP protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_IPFilter_DenyAll", + "name": "Default IP Filter Policy should be Deny", + "status": "Enabled" }, { - "ruleType": "DirectMethodInvokesNotInAllowedRange", - "displayName": "Number of direct method invokes is not in allowed range", - "description": "Get an alert when the number of direct method invokes in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_IPFilter_PermissiveRule", + "name": "IP Filter rule includes large IP range", + "status": "Enabled" }, { - "ruleType": "FailedLocalLoginsNotInAllowedRange", - "displayName": "Number of failed local logins is not in allowed range", - "description": "Get an alert when the number of failed local logins on the device in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_OpenPorts", + "name": "Open Ports On Device", + "status": "Disabled" }, { - "ruleType": "FileUploadsNotInAllowedRange", - "displayName": "Number of file uploads is not in allowed range", - "description": "Get an alert when the number of file uploads from the device to the cloud in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_PermissiveFirewallPolicy", + "name": "Permissive firewall policy in one of the chains was found", + "status": "Enabled" }, { - "ruleType": "QueuePurgesNotInAllowedRange", - "displayName": "Number of device queue purges is not in allowed range", - "description": "Get an alert when the number of device queue purges in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_PermissiveInputFirewallRules", + "name": "Permissive firewall rule in the input chain was found", + "status": "Enabled" }, { - "ruleType": "TwinUpdatesNotInAllowedRange", - "displayName": "Number of twin updates is not in allowed range", - "description": "Get an alert when the number of twin updates (by the device or the service) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_PermissiveOutputFirewallRules", + "name": "Permissive firewall rule in the output chain was found", + "status": "Enabled" }, { - "ruleType": "UnauthorizedOperationsNotInAllowedRange", - "displayName": "Number of unauthorized operations is not in allowed range", - "description": "Get an alert when the number unauthorized operations in the time window is not in the allowed range. Unauthorized operations are operations that affect the device (or done by it) that fail because of an unauthorized error", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" - } - ], - "allowlistRules": [ - { - "ruleType": "ConnectionToIpNotAllowed", - "displayName": "Outbound connection to an ip that isn't allowed", - "description": "Get an alert when an outbound connection is created between your device and an ip that isn't allowed", - "isEnabled": false, - "allowlistValues": [] + "recommendationType": "IoT_PrivilegedDockerOptions", + "name": "High level permissions configured in Edge model twin for Edge module", + "status": "Enabled" }, { - "ruleType": "LocalUserNotAllowed", - "displayName": "Login by a local user that isn't allowed", - "description": "Get an alert when a local user that isn't allowed logins to the device", - "isEnabled": false, - "allowlistValues": [] + "recommendationType": "IoT_SharedCredentials", + "name": "Same Authentication Credentials used by multiple devices", + "status": "Disabled" }, { - "ruleType": "ProcessNotAllowed", - "displayName": "Execution of a process that isn't allowed", - "description": "Get an alert when a process that isn't allowed is executed", - "isEnabled": false, - "allowlistValues": [] + "recommendationType": "IoT_VulnerableTLSCipherSuite", + "name": "TLS cipher suite upgrade", + "status": "Enabled" } - ], - "denylistRules": [] + ] } } }, "201": { "body": { - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub/providers/Microsoft.Security/deviceSecurityGroups/samplesecuritygroup", - "name": "samplesecuritygroup", - "type": "Microsoft.Security/deviceSecurityGroups", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/MyGroup/providers/Microsoft.Security/Locations/eastus/IoTSecuritySolutions/default", + "name": "default", + "type": "Microsoft.Security/IoTSecuritySolutions", + "location": "East Us", + "tags": {}, "properties": { - "thresholdRules": [], - "timeWindowRules": [ - { - "ruleType": "ActiveConnectionsNotInAllowedRange", - "displayName": "Number of active connections is not in allowed range", - "description": "Get an alert when the number of active connections of a device in the time window is not in the allowed range", - "isEnabled": true, - "minThreshold": 0, - "maxThreshold": 30, - "timeWindowSize": "PT05M" - }, + "workspace": "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", + "status": "Enabled", + "export": [], + "disabledDataSources": [], + "displayName": "Solution Default", + "iotHubs": [ + "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" + ], + "userDefinedResources": { + "query": "where type != \"microsoft.devices/iothubs\" | where name contains \"iot\"", + "querySubscriptions": [ + "075423e9-7d33-4166-8bdf-3920b04e3735" + ] + }, + "autoDiscoveredResources": [ + "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735", + "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub" + ], + "recommendationsConfiguration": [ { - "ruleType": "AmqpC2DMessagesNotInAllowedRange", - "displayName": "Number of cloud to device messages (AMQP protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (AMQP protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_ACRAuthentication", + "name": "Service Principal Not Used with ACR", + "status": "Enabled" }, { - "ruleType": "MqttC2DMessagesNotInAllowedRange", - "displayName": "Number of cloud to device messages (MQTT protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (MQTT protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_AgentSendsUnutilizedMessages", + "name": "Agent sending underutilized messages", + "status": "TurnedOn" }, { - "ruleType": "HttpC2DMessagesNotInAllowedRange", - "displayName": "Number of cloud to device messages (HTTP protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (HTTP protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_Baseline", + "name": "Operating system (OS) baseline validation failure", + "status": "Enabled" }, { - "ruleType": "AmqpC2DRejectedMessagesNotInAllowedRange", - "displayName": "Number of rejected cloud to device messages (AMQP protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (AMQP protocol) that were rejected by the device in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_EdgeHubMemOptimize", + "name": "Edge Hub memory can be optimized", + "status": "Enabled" }, { - "ruleType": "MqttC2DRejectedMessagesNotInAllowedRange", - "displayName": "Number of rejected cloud to device messages (MQTT protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (MQTT protocol) that were rejected by the device in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_EdgeLoggingOptions", + "name": "No Logging Configured for Edge Module", + "status": "Enabled" }, { - "ruleType": "HttpC2DRejectedMessagesNotInAllowedRange", - "displayName": "Number of rejected cloud to device messages (HTTP protocol) is not in allowed range", - "description": "Get an alert when the number of cloud to device messages (HTTP protocol) that were rejected by the device in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_InconsistentModuleSettings", + "name": "Module Settings Inconsistent in SecurityGroup", + "status": "Enabled" }, { - "ruleType": "AmqpD2CMessagesNotInAllowedRange", - "displayName": "Number of device to cloud messages (AMQP protocol) is not in allowed range", - "description": "Get an alert when the number of device to cloud messages (AMQP protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_InstallAgent", + "name": "Install the Azure Security of Things Agent", + "status": "Enabled" }, { - "ruleType": "MqttD2CMessagesNotInAllowedRange", - "displayName": "Number of device to cloud messages (MQTT protocol) is not in allowed range", - "description": "Get an alert when the number of device to cloud messages (MQTT protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_IPFilter_DenyAll", + "name": "Default IP Filter Policy should be Deny", + "status": "Enabled" }, { - "ruleType": "HttpD2CMessagesNotInAllowedRange", - "displayName": "Number of device to cloud messages (HTTP protocol) is not in allowed range", - "description": "Get an alert when the number of device to cloud messages (HTTP protocol) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_IPFilter_PermissiveRule", + "name": "IP Filter rule includes large IP range", + "status": "Enabled" }, { - "ruleType": "DirectMethodInvokesNotInAllowedRange", - "displayName": "Number of direct method invokes is not in allowed range", - "description": "Get an alert when the number of direct method invokes in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_OpenPorts", + "name": "Open Ports On Device", + "status": "Disabled" }, { - "ruleType": "FailedLocalLoginsNotInAllowedRange", - "displayName": "Number of failed local logins is not in allowed range", - "description": "Get an alert when the number of failed local logins on the device in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_PermissiveFirewallPolicy", + "name": "Permissive firewall policy in one of the chains was found", + "status": "Enabled" }, { - "ruleType": "FileUploadsNotInAllowedRange", - "displayName": "Number of file uploads is not in allowed range", - "description": "Get an alert when the number of file uploads from the device to the cloud in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_PermissiveInputFirewallRules", + "name": "Permissive firewall rule in the input chain was found", + "status": "Enabled" }, { - "ruleType": "QueuePurgesNotInAllowedRange", - "displayName": "Number of device queue purges is not in allowed range", - "description": "Get an alert when the number of device queue purges in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_PermissiveOutputFirewallRules", + "name": "Permissive firewall rule in the output chain was found", + "status": "Enabled" }, { - "ruleType": "TwinUpdatesNotInAllowedRange", - "displayName": "Number of twin updates is not in allowed range", - "description": "Get an alert when the number of twin updates (by the device or the service) in the time window is not in the allowed range", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" + "recommendationType": "IoT_PrivilegedDockerOptions", + "name": "High level permissions configured in Edge model twin for Edge module", + "status": "Enabled" }, { - "ruleType": "UnauthorizedOperationsNotInAllowedRange", - "displayName": "Number of unauthorized operations is not in allowed range", - "description": "Get an alert when the number unauthorized operations in the time window is not in the allowed range. Unauthorized operations are operations that affect the device (or done by it) that fail because of an unauthorized error", - "isEnabled": false, - "minThreshold": 0, - "maxThreshold": 0, - "timeWindowSize": "PT15M" - } - ], - "allowlistRules": [ - { - "ruleType": "ConnectionToIpNotAllowed", - "displayName": "Outbound connection to an ip that isn't allowed", - "description": "Get an alert when an outbound connection is created between your device and an ip that isn't allowed", - "isEnabled": false, - "allowlistValues": [] - }, - { - "ruleType": "LocalUserNotAllowed", - "displayName": "Login by a local user that isn't allowed", - "description": "Get an alert when a local user that isn't allowed logins to the device", - "isEnabled": false, - "allowlistValues": [] + "recommendationType": "IoT_SharedCredentials", + "name": "Same Authentication Credentials used by multiple devices", + "status": "Disabled" }, { - "ruleType": "ProcessNotAllowed", - "displayName": "Execution of a process that isn't allowed", - "description": "Get an alert when a process that isn't allowed is executed", - "isEnabled": false, - "allowlistValues": [] + "recommendationType": "IoT_VulnerableTLSCipherSuite", + "name": "TLS cipher suite upgrade", + "status": "Enabled" } - ], - "denylistRules": [] + ] } } } From 4d4c60bf93268cccb0a8f95bbfba65659d4f6607 Mon Sep 17 00:00:00 2001 From: Roman Khotsyn Date: Sun, 20 Sep 2020 19:45:59 -0700 Subject: [PATCH 04/37] [SQL][V20200801] Adding new API version with named replica and maintenance (#10432) * [SQL][V20200801] Adding new API version with named replica and maintenance * Various fixed and enhancements * Removed extra examples * Removing last extra example * AsBefore * AsAfter + restart CI --- .../preview/2020-08-01-preview/databases.json | 1110 +++++++++++++++++ .../2020-08-01-preview/elasticPools.json | 632 ++++++++++ .../examples/CreateDatabaseCopyMode.json | 91 ++ .../examples/CreateDatabaseDefaultMode.json | 92 ++ .../examples/CreateDatabaseMin.json | 83 ++ .../examples/CreateDatabaseNamedReplica.json | 103 ++ .../examples/CreateDatabasePITRMode.json | 70 ++ .../examples/CreateDatabaseRecoveryMode.json | 69 + .../examples/CreateDatabaseRestoreMode.json | 70 ++ .../examples/CreateDatabaseRestoreMode2.json | 69 + .../examples/CreateDatabaseSecondaryMode.json | 94 ++ .../CreateDwDatabaseByServiceObjective.json | 80 ++ ...CreateVCoreDatabaseByServiceObjective.json | 92 ++ .../CreateVCoreDatabaseBySkuNameCapacity.json | 91 ++ .../examples/DeleteDatabase.json | 14 + .../ElasticPoolCreateOrUpdateMax.json | 72 ++ .../ElasticPoolCreateOrUpdateMin.json | 61 + .../examples/ElasticPoolDelete.json | 14 + .../examples/ElasticPoolGet.json | 36 + .../examples/ElasticPoolListByServer.json | 81 ++ .../examples/ElasticPoolUpdateMax.json | 52 + .../examples/ElasticPoolUpdateMin.json | 36 + .../examples/FailoverDatabase.json | 14 + .../examples/FailoverElasticPool.json | 13 + .../examples/GetVCoreDatabase.json | 47 + .../examples/ListDatabasesByElasticPool.json | 61 + .../examples/ListVCoreDatabasesByServer.json | 81 ++ .../examples/PatchVCoreDatabase.json | 57 + .../examples/PauseDatabase.json | 34 + .../examples/RenameDatabase.json | 15 + .../examples/ResumeDatabase.json | 34 + .../examples/UpgradeDataWarehouse.json | 13 + specification/sql/resource-manager/readme.md | 20 + 33 files changed, 3501 insertions(+) create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/databases.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/elasticPools.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseCopyMode.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseDefaultMode.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseMin.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseNamedReplica.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabasePITRMode.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRecoveryMode.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRestoreMode.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRestoreMode2.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseSecondaryMode.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDwDatabaseByServiceObjective.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/DeleteDatabase.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolCreateOrUpdateMax.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolCreateOrUpdateMin.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolDelete.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolGet.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolListByServer.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolUpdateMax.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolUpdateMin.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/FailoverDatabase.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/FailoverElasticPool.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/GetVCoreDatabase.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ListDatabasesByElasticPool.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ListVCoreDatabasesByServer.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/PatchVCoreDatabase.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/PauseDatabase.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/RenameDatabase.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ResumeDatabase.json create mode 100644 specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/UpgradeDataWarehouse.json diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/databases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/databases.json new file mode 100644 index 000000000000..531c0d3f3d97 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/databases.json @@ -0,0 +1,1110 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-08-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "description": "Gets a list of databases.", + "operationId": "Databases_ListByServer", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of databases.", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets a list of databases.": { + "$ref": "./examples/ListVCoreDatabasesByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}": { + "get": { + "tags": [ + "Databases" + ], + "description": "Gets a database.", + "operationId": "Databases_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Gets a database.": { + "$ref": "./examples/GetVCoreDatabase.json" + } + } + }, + "put": { + "tags": [ + "Databases" + ], + "description": "Creates a new database or updates an existing database.", + "operationId": "Databases_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested database resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 InvalidDatabaseCreateMode - Invalid request to create a database.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a server.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Creating or updating the database is in progress." + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/Database" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates a database with default mode.": { + "$ref": "./examples/CreateDatabaseDefaultMode.json" + }, + "Creates a VCore database by specifying service objective name.": { + "$ref": "./examples/CreateVCoreDatabaseByServiceObjective.json" + }, + "Creates a VCore database by specifying sku name and capacity.": { + "$ref": "./examples/CreateVCoreDatabaseBySkuNameCapacity.json" + }, + "Creates a data warehouse by specifying service objective name.": { + "$ref": "./examples/CreateDwDatabaseByServiceObjective.json" + }, + "Creates a database with minimum number of parameters.": { + "$ref": "./examples/CreateDatabaseMin.json" + }, + "Creates a database as a copy.": { + "$ref": "./examples/CreateDatabaseCopyMode.json" + }, + "Creates a database as an on-line secondary.": { + "$ref": "./examples/CreateDatabaseSecondaryMode.json" + }, + "Creates a database as named replica secondary.": { + "$ref": "./examples/CreateDatabaseNamedReplica.json" + }, + "Creates a database from PointInTimeRestore.": { + "$ref": "./examples/CreateDatabasePITRMode.json" + }, + "Creates a database from restore with database deletion time.": { + "$ref": "./examples/CreateDatabaseRestoreMode.json" + }, + "Creates a database from restore with restorableDroppedDatabaseId.": { + "$ref": "./examples/CreateDatabaseRestoreMode2.json" + }, + "Creates a database from recoverableDatabaseId.": { + "$ref": "./examples/CreateDatabaseRecoveryMode.json" + } + } + }, + "delete": { + "tags": [ + "Databases" + ], + "description": "Deletes the database.", + "operationId": "Databases_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + }, + "202": { + "description": "Deleting the database is in progress." + }, + "204": { + "description": "The specified database does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a database.": { + "$ref": "./examples/DeleteDatabase.json" + } + } + }, + "patch": { + "tags": [ + "Databases" + ], + "description": "Updates an existing database.", + "operationId": "Databases_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested database resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseUpdate" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseCreateOrUpdateRequest - The request body for the create or update database operation is invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSourceDatabaseId - Invalid source database identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MissingCollation - Collation is required.\n\n * 400 MissingMaxSizeBytes - MaxSizeBytes is required.\n\n * 400 MissingSkuName - Sku name is required.\n\n * 400 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 InvalidLicenseType - The specified license type is invalid.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 DatabaseNameDoesNotMatchSourceDatabaseId - The database name specified doesn’t match the database name in sourceDatabaseId.\n\n * 400 ElasticPoolNotSupportedForExternalBackupRestore - Elastic pool is not supported for external backup restore\n\n * 400 InvalidRecoverableDatabaseId - Invalid recoverable database identifier.\n\n * 400 InvalidRecoveryServicesRecoveryPointId - Invalid recovery services recovery point identifier.\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 MissingRecoverableDatabaseId - Missing recoverable database identifier.\n\n * 400 MissingRecoveryServicesRecoveryPointId - Missing recovery services recovery point Id.\n\n * 400 MissingRestorableDroppedDatabaseId - Missing restorableDroppedDatabaseId\n\n * 400 MissingRestorePointInTime - Missing restore point in time\n\n * 400 MissingSourceDatabaseDeletionDate - Missing source database deletion date\n\n * 400 MissingStorageContainerSasToken - Missing storage container SAS token\n\n * 400 MissingStorageContainerUri - Missing storage container URI\n\n * 400 RestorableDroppedDatabaseIdGivenForRestoreWithSourceDatabaseId - Cannot specify restorableDroppedDatabaseId when sourceDatabaseId is already given in restore create mode\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 InvalidDatabaseCreateMode - Invalid request to create a database.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a server.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Updating the database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates a database.": { + "$ref": "./examples/PatchVCoreDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "description": "Gets a list of databases in an elastic pool.", + "operationId": "Databases_ListByElasticPool", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a list of databases in an elastic pool.", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets a list of databases in an elastic pool.": { + "$ref": "./examples/ListDatabasesByElasticPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/failover": { + "post": { + "tags": [ + "Databases" + ], + "description": "Failovers a database.", + "operationId": "Databases_Failover", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to failover.", + "required": true, + "type": "string" + }, + { + "name": "replicaType", + "in": "query", + "description": "The type of replica to be failed over.", + "required": false, + "type": "string", + "enum": [ + "Primary", + "ReadableSecondary" + ], + "x-ms-enum": { + "name": "ReplicaType", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed database failover." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 DatabaseFailoverThrottled - There was a recent failover on the database or pool if database belongs in an elastic pool.\n\n * 400 DatabaseFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 DatabaseNotInStateToFailover - The database is currently in a state such that failover cannot be issued." + }, + "202": { + "description": "Database failover is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Failover an database": { + "$ref": "./examples/FailoverDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/pause": { + "post": { + "tags": [ + "Databases" + ], + "description": "Pauses a database.", + "operationId": "Databases_Pause", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to be paused.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully paused the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 CannotDeactivateWhenDeactivatingInProgress - Deactivation workflow failed because there is a deactivate workflow already running.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" + }, + "202": { + "description": "Pausing the database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Pauses a database.": { + "$ref": "./examples/PauseDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/resume": { + "post": { + "tags": [ + "Databases" + ], + "description": "Resumes a database.", + "operationId": "Databases_Resume", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to be resumed.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully resumed the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows" + }, + "202": { + "description": "Resuming the database is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Resumes a database.": { + "$ref": "./examples/ResumeDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/upgradeDataWarehouse": { + "post": { + "tags": [ + "Databases" + ], + "description": "Upgrades a data warehouse.", + "operationId": "Databases_UpgradeDataWarehouse", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to be upgraded.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully upgraded the data warehouse." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 UpdateNotAllowedInCurrentReplicationState - The operation is disallowed on the database in its current replication state.\n\n * 400 GeoReplicaLimitReached - The per-replica replication limit was reached.\n\n * 400 ReplicationSourceAndTargetMustHaveSameName - The replication source and target databases must have the same name.\n\n * 400 ReplicationSourceAndTargetMustBeInDifferentServers - The replication source and target databases must be in different logical servers.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 TierChangeUnsupportedDueToMemoryOptimizedObject - The database cannot update its sku because it has memory-optimized objects.\n\n * 400 SourceServerNotFound - The server part of a source database id provided in a CreateDatabaseAsCopy API call doesn't map to an existing server.\n\n * 400 InvalidDatabaseCreateMode - Invalid request to create a database.\n\n * 400 InvalidAddSecondaryPermission - User does not have sufficient permission to add secondary on the specified server.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CurrentDatabaseLogSizeExceedsMaxSize - User attempted to change the database to a sku with lower max log size than the current usage.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 OfferDisabledOnSubscription - Subscription offer type is restricted from provisioning the requested resource.\n\n * 400 InvalidTargetSubregion - The target server of a non-readable secondary is not in a DR paired Azure region.\n\n * 400 PartnerServerNotCompatible - The user is attempting to copy a database from a SAWA V1 server to a Sterling server or vice versa.\n\n * 400 IncorrectReplicationLinkState - The operation expects the database to be in an expected state on the replication link.\n\n * 400 TargetElasticPoolDoesNotExist - The elastic pool does not exist on a server.\n\n * 400 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 ElasticPoolSkuCombinationInvalid - Elastic pool and sku can be specified together only if sku is specified as 'ElasticPool'.\n\n * 400 ElasticPoolTierCombinationInvalid - The database tier is different than the elastic pool service tier.\n\n * 400 ElasticPoolNameRequired - User tried to create or update database to elastic pool service objective without specifying the name of the elastic pool.\n\n * 400 AzureKeyVaultInvalidExpirationDate - The operation could not be completed because the Azure Key Vault key expiration date is invalid.\n\n * 400 SecurityAzureKeyVaultUrlNullOrEmpty - The operation could not be completed because the Azure Key Vault Uri is null or empty.\n\n * 400 AzureKeyVaultInvalidUri - An invalid response from Azure Key Vault. Please use a valid Azure Key Vault URI.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 InvalidReadScaleEdition - User attempted to enable read scale on a database type that does not support it.\n\n * 400 InvalidReadScaleUnits - User attempted to provide a read scale value that is not supported.\n\n * 400 SecurityAzureKeyVaultInvalidKeyName - The operation could not be completed because of an invalid Server Key name.\n\n * 400 ElasticPoolDatabaseCountOverLimit - Attempting to create or add database to elastic pool when the database count limit of the elastic pool has been reached.\n\n * 400 CannotChangeToOrFromDataWarehouseTier - User attempted to change the sku of a database from DataWarehouse tier to non DataWarehouse tiers or vice versa.\n\n * 400 AzureKeyVaultMalformedVaultUri - The provided Key Vault uri is not valid.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 RequestedDatabaseSizeRequiresShrink - User attempted to ALTER DATABASE MODIFY MAXSIZE to modify the MAXSIZE for a database to a smaller size then the current size.\n\n * 400 CurrentDatabaseSizeExceedsDbMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 SecurityAdalPrincipalCertExpiredError - The operation could not be completed because the Azure Key Vault principal certificate has expired.\n\n * 400 SecurityInvalidAzureKeyVaultRecoveryLevel - The provided Key Vault uri is not valid.\n\n * 400 KeyMaterialNotFoundOnRemoteServer - Remote server does not have access to key material used as a TDE protector.\n\n * 400 AzureKeyVaultMismatchError - Unexpected Key Vault region found in the http response.\n\n * 400 SourceDatabaseEditionCouldNotBeUpgraded - The source database cannot have higher edition than the target database.\n\n * 400 AzureKeyVaultRsaKeyNotSupported - The provided key vault uses unsupported RSA Key Size or Key Type. The supported RSA key size is 2048 or 3072 and Key Type is RSA or RSA-HSM.\n\n * 400 TargetDatabaseEditionCouldNotBeDowngraded - The target database cannot have lower edition than the source database.\n\n * 400 UpdateNotAllowedIfGeoDrOperationInProgress - The operation is disallowed because copy or failover operation for database '{0}' on server '{1}' is currently in progress.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 SecurityAzureKeyVaultGeoChainError - Creating secondary of secondary (a process known as chaining) is not supported when enabling Transparent Data Encryption using Azure Key Vault (BYOK).\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 UnsupportedCapacity - User tried to create or update database with capacity which is not supported.\n\n * 400 RestoreToFreeEditionNotSupported - Restore and GeoRestore target cannot be free database.\n\n * 400 RestoreNotSupportedForFreeEdition - Restore and GeoRestore are not supported for free database.\n\n * 400 InvalidDroppedDatabase - Source database dropped does not exist on server within the supported recovery period.\n\n * 400 InvalidLiveDatabase - Source database does not exist on server within the supported recovery period. If restoring a dropped database, please specify its deletion date.\n\n * 400 InvalidVldbRecoverySlo - The Hyperscale edition recovery requires both source and target databases to use Hyperscale service level objective.\n\n * 400 InvalidVldbRestoreSlo - The Hyperscale edition Point-In-Time restore requires both source and target databases to use Hyperscale service level objective.\n\n * 400 CannotSpecifyPoolOrSlo - Specifying an elastic pool and/or changing the service level objective or edition is not supported for edition.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.\n\n * 400 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\n\n * 400 InvalidBackupStorageAccountType - User passed zrs/lrs during create/update of a database but it failed either because the customer is not whitelisted or because zrs is not available in the specified region.\n\n * 400 DatabaseInvalidSkuPropertyCombination - The properties of the requested sku are inconsistent. Please check that a valid combination is specified. See https://docs.microsoft.com/en-us/rest/api/sql/capabilities/listbylocation#serviceobjectivecapability for more details.\n\n * 400 DatabaseNamedReplicaPerDatabaseLimitExceeded - User tried create a named replica that would exceed the allowed number per primary database\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 UpgradeOnlyAllowedOnDataWarehouseInstances - User attempted to upgrade non-datawarehouse instance.\n\n * 401 AzureKeyVaultKeyDisabled - The operation could not be completed on the server because the Azure Key Vault key is disabled.\n\n * 401 AzureKeyVaultNoServerIdentity - The server identity is not correctly configured.\n\n * 401 AzureKeyVaultMissingPermissions - The server is missing required permissions on the Azure Key Vault. \n\n * 401 AdalGenericError - The operation could not be completed because an Azure Active Directory error was encountered.\n\n * 401 AdalServicePrincipalNotFound - The operation could not be completed because an Azure Active Directory library Service Principal not found error was encountered.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 405 UnsupportedReplicationOperation - An unsupported replication operation was initiated on the database.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 InvalidOperationForDatabaseNotInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 FreeDbAlreadyExists - Only one free database can exist for a subscription per region.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ConflictingSystemOperationInProgress - A system maintenance operation is in progress on the database and further operations need to wait until it is completed.\n\n * 409 SkuAssignmentInProgress - The current assignment request cannot be processed because a previous request has not completed.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 ServerKeyNameAlreadyExists - The server key already exists on the server.\n\n * 409 ServerKeyUriAlreadyExists - The server key URI already exists on the server.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 ServerKeyDoesNotExists - The server key does not exist.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 AzureKeyVaultKeyNameNotFound - The operation could not be completed because the Azure Key Vault Key name does not exist.\n\n * 409 AzureKeyVaultKeyInUse - The key is currently being used by the server.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\n\n * 409 TargetElasticPoolBeingUpdated - The update of elastic pool cannot be started because there is copy operation in progress for one of the databases in this elastic pool\n\n * 409 DatabaseCopyLimitPerReplicaReached - User reached the limit of concurrent database copies.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 AzureKeyVaultConnectionFailed - The operation could not be completed on the server because attempts to connect to Azure Key Vault have failed\n\n * 503 AzureKeyVaultGenericConnectionError - The operation could not be completed because an error was encountered when attempting to retrieve Key Vault information .\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Upgrading the data warehouse is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Upgrades a data warehouse.": { + "$ref": "./examples/UpgradeDataWarehouse.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/move": { + "post": { + "tags": [ + "Databases" + ], + "description": "Renames a database.", + "operationId": "Databases_Rename", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database to rename.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The resource move definition for renaming this database.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceMoveDefinition" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully renamed the database." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceMoveRequest - The resource move request is invalid.\n\n * 400 InvalidMoveTargetResourceId - The target resource identifier in move request is invalid.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 DatabaseNameInUse - Database already exists. Choose a different database name.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 UnsupportedServiceName - The specified name is an invalid name because it contains one or more unsupported unicode characters.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 InvalidOperationForDatabaseInReplicationRelationship - A replication seeding operation was performed on a database that is already in a replication relationship." + } + }, + "x-ms-examples": { + "Renames a database.": { + "$ref": "./examples/RenameDatabase.json" + } + } + } + } + }, + "definitions": { + "DatabaseListResult": { + "description": "A list of databases.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "DatabaseProperties": { + "description": "The database's properties.", + "type": "object", + "properties": { + "createMode": { + "description": "Specifies the mode of database creation.\r\n\r\nDefault: regular database creation.\r\n\r\nCopy: creates a database as a copy of an existing database. sourceDatabaseId must be specified as the resource ID of the source database.\r\n\r\nSecondary: creates a database as a secondary replica of an existing database. sourceDatabaseId must be specified as the resource ID of the existing primary database.\r\n\r\nPointInTimeRestore: Creates a database by restoring a point in time backup of an existing database. sourceDatabaseId must be specified as the resource ID of the existing database, and restorePointInTime must be specified.\r\n\r\nRecovery: Creates a database by restoring a geo-replicated backup. sourceDatabaseId must be specified as the recoverable database resource ID to restore.\r\n\r\nRestore: Creates a database by restoring a backup of a deleted database. sourceDatabaseId must be specified. If sourceDatabaseId is the database's original resource ID, then sourceDatabaseDeletionDate must be specified. Otherwise sourceDatabaseId must be the restorable dropped database resource ID and sourceDatabaseDeletionDate is ignored. restorePointInTime may also be specified to restore from an earlier point in time.\r\n\r\nRestoreLongTermRetentionBackup: Creates a database by restoring from a long term retention vault. recoveryServicesRecoveryPointResourceId must be specified as the recovery point resource ID.\r\n\r\nCopy, Secondary, and RestoreLongTermRetentionBackup are not supported for DataWarehouse edition.", + "enum": [ + "Default", + "Copy", + "Secondary", + "PointInTimeRestore", + "Restore", + "Recovery", + "RestoreExternalBackup", + "RestoreExternalBackupSecondary", + "RestoreLongTermRetentionBackup", + "OnlineSecondary" + ], + "type": "string", + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "collation": { + "description": "The collation of the database.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "maxSizeBytes": { + "format": "int64", + "description": "The max size of the database expressed in bytes.", + "type": "integer" + }, + "sampleName": { + "description": "The name of the sample schema to apply when creating this database.", + "enum": [ + "AdventureWorksLT", + "WideWorldImportersStd", + "WideWorldImportersFull" + ], + "type": "string", + "x-ms-enum": { + "name": "SampleName", + "modelAsString": true + }, + "x-ms-mutability": [ + "create" + ] + }, + "elasticPoolId": { + "description": "The resource identifier of the elastic pool containing this database.", + "type": "string" + }, + "sourceDatabaseId": { + "description": "The resource identifier of the source database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "status": { + "description": "The status of the database.", + "enum": [ + "Online", + "Restoring", + "RecoveryPending", + "Recovering", + "Suspect", + "Offline", + "Standby", + "Shutdown", + "EmergencyMode", + "AutoClosed", + "Copying", + "Creating", + "Inaccessible", + "OfflineSecondary", + "Pausing", + "Paused", + "Resuming", + "Scaling", + "OfflineChangingDwPerformanceTiers", + "OnlineChangingDwPerformanceTiers", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DatabaseStatus", + "modelAsString": true + } + }, + "databaseId": { + "format": "uuid", + "description": "The ID of the database.", + "type": "string", + "readOnly": true + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of the database (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "currentServiceObjectiveName": { + "description": "The current service level objective name of the database.", + "type": "string", + "readOnly": true + }, + "requestedServiceObjectiveName": { + "description": "The requested service level objective name of the database.", + "type": "string", + "readOnly": true + }, + "defaultSecondaryLocation": { + "description": "The default secondary region for this database.", + "type": "string", + "readOnly": true + }, + "failoverGroupId": { + "description": "Failover Group resource identifier that this database belongs to.", + "type": "string", + "readOnly": true + }, + "restorePointInTime": { + "format": "date-time", + "description": "Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "sourceDatabaseDeletionDate": { + "format": "date-time", + "description": "Specifies the time that the database was deleted.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "recoveryServicesRecoveryPointId": { + "description": "The resource identifier of the recovery point associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "longTermRetentionBackupResourceId": { + "description": "The resource identifier of the long term retention backup associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "recoverableDatabaseId": { + "description": "The resource identifier of the recoverable database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "restorableDroppedDatabaseId": { + "description": "The resource identifier of the restorable dropped database associated with create operation of this database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "catalogCollation": { + "description": "Collation of the metadata catalog.", + "enum": [ + "DATABASE_DEFAULT", + "SQL_Latin1_General_CP1_CI_AS" + ], + "type": "string", + "x-ms-enum": { + "name": "CatalogCollationType", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "zoneRedundant": { + "description": "Whether or not this database is zone redundant, which means the replicas of this database will be spread across multiple availability zones.", + "type": "boolean" + }, + "licenseType": { + "description": "The license type to apply for this database. `LicenseIncluded` if you need a license, or `BasePrice` if you have a license and are eligible for the Azure Hybrid Benefit.", + "enum": [ + "LicenseIncluded", + "BasePrice" + ], + "type": "string", + "x-ms-enum": { + "name": "DatabaseLicenseType", + "modelAsString": true + } + }, + "maxLogSizeBytes": { + "format": "int64", + "description": "The max log size for this database.", + "type": "integer", + "readOnly": true + }, + "earliestRestoreDate": { + "format": "date-time", + "description": "This records the earliest start date and time that restore is available for this database (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "readScale": { + "description": "The state of read-only routing. If enabled, connections that have application intent set to readonly in their connection string may be routed to a readonly secondary replica in the same region.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "DatabaseReadScale", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "update" + ] + }, + "highAvailabilityReplicaCount": { + "format": "int32", + "description": "The number of secondary replicas associated with the database that are used to provide high availability.", + "type": "integer" + }, + "secondaryType": { + "description": "The secondary type of the database if it is a secondary. Valid values are Geo and Named.", + "enum": [ + "Geo", + "Named" + ], + "type": "string", + "x-ms-enum": { + "name": "SecondaryType", + "modelAsString": true + } + }, + "currentSku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The name and tier of the SKU.", + "readOnly": true + }, + "autoPauseDelay": { + "format": "int32", + "description": "Time in minutes after which database is automatically paused. A value of -1 means that automatic pause is disabled", + "type": "integer" + }, + "storageAccountType": { + "description": "The storage account type used to store backups for this database. Currently the only supported option is GRS (GeoRedundantStorage).", + "enum": [ + "GRS", + "LRS", + "ZRS" + ], + "type": "string", + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": true + } + }, + "minCapacity": { + "format": "double", + "description": "Minimal capacity that database will always have allocated, if not paused", + "type": "number" + }, + "pausedDate": { + "format": "date-time", + "description": "The date when database was paused by user configuration or action(ISO8601 format). Null if the database is ready.", + "type": "string", + "readOnly": true + }, + "resumedDate": { + "format": "date-time", + "description": "The date when database was resumed by user action or database login (ISO8601 format). Null if the database is paused.", + "type": "string", + "readOnly": true + }, + "maintenanceConfigurationId": { + "description": "Maintenance configuration id assigned to the database. This configuration defines the period when the maintenance updates will be rolled out.", + "type": "string" + } + } + }, + "Database": { + "description": "A database resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The database SKU.\r\n\r\nThe list of SKUs may vary by region and support offer. To determine the SKUs (including the SKU name, tier/edition, family, and capacity) that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API or one of the following commands:\r\n\r\n```azurecli\r\naz sql db list-editions -l -o table\r\n````\r\n\r\n```powershell\r\nGet-AzSqlServerServiceObjective -Location \r\n````\r\n" + }, + "kind": { + "description": "Kind of database. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "managedBy": { + "description": "Resource that manages the database.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/DatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "DatabaseUpdate": { + "description": "A database resource.", + "type": "object", + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The name and tier of the SKU." + }, + "properties": { + "$ref": "#/definitions/DatabaseProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ResourceMoveDefinition": { + "description": "Contains the information necessary to perform a resource move (rename).", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "The target ID for the resource", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "description": "The name of the workspace.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlPoolNameParameter": { + "name": "sqlPoolName", + "in": "path", + "description": "The name of the sql pool.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlDatabaseNameParameter": { + "name": "sqlDatabaseName", + "in": "path", + "description": "The name of the sql database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/elasticPools.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/elasticPools.json new file mode 100644 index 000000000000..b3f260843c4a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/elasticPools.json @@ -0,0 +1,632 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-08-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools": { + "get": { + "tags": [ + "ElasticPools" + ], + "description": "Gets all elastic pools in a server.", + "operationId": "ElasticPools_ListByServer", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "$skip", + "in": "query", + "description": "The number of elements in the collection to skip.", + "required": false, + "type": "integer" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Succeeded", + "schema": { + "$ref": "#/definitions/ElasticPoolListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all elastic pools in a server": { + "$ref": "./examples/ElasticPoolListByServer.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}": { + "get": { + "tags": [ + "ElasticPools" + ], + "description": "Gets an elastic pool.", + "operationId": "ElasticPools_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Succeeded", + "schema": { + "$ref": "#/definitions/ElasticPool" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + } + }, + "x-ms-examples": { + "Get an elastic pool": { + "$ref": "./examples/ElasticPoolGet.json" + } + } + }, + "put": { + "tags": [ + "ElasticPools" + ], + "description": "Creates or updates an elastic pool.", + "operationId": "ElasticPools_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The elastic pool parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ElasticPool" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Updated the elastic pool", + "schema": { + "$ref": "#/definitions/ElasticPool" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Created the elastic pool", + "schema": { + "$ref": "#/definitions/ElasticPool" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update elastic pool with minimum parameters": { + "$ref": "./examples/ElasticPoolCreateOrUpdateMin.json" + }, + "Create or update elastic pool with all parameter": { + "$ref": "./examples/ElasticPoolCreateOrUpdateMax.json" + } + } + }, + "delete": { + "tags": [ + "ElasticPools" + ], + "description": "Deletes an elastic pool.", + "operationId": "ElasticPools_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Deleted the elastic pool" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + }, + "202": { + "description": "Deleting the elastic pool is in progress." + }, + "204": { + "description": "Elastic pool did not exist" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete an elastic pool": { + "$ref": "./examples/ElasticPoolDelete.json" + } + } + }, + "patch": { + "tags": [ + "ElasticPools" + ], + "description": "Updates an elastic pool.", + "operationId": "ElasticPools_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The elastic pool update parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ElasticPoolUpdate" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Updated the elastic pool", + "schema": { + "$ref": "#/definitions/ElasticPool" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidResourceId - Invalid resource identifier.\n\n * 400 InvalidSkuName - Invalid SKU name.\n\n * 400 MismatchedSkuNameAndCapacity - Mismatch between SKU name and capacity.\n\n * 400 MismatchedSkuNameAndTier - Mismatch between SKU name and tier.\n\n * 400 MismatchedSkuNameAndFamily - Mismatch between SKU name and family.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\n\n * 400 InvalidSku - The user specified an invalid sku.\n\n * 400 InvalidTierSkuCombination - The specified tier does not support the specified sku.\n\n * 400 ServerQuotaExceeded - The server reached its limit for allowed Database Throughput Unit.\n\n * 400 ElasticPoolAlreadyExists - The server already contains an elastic pool with the specified name.\n\n * 400 InvalidInputValueForEdition - Specified edition is not supported for elastic pool provisioning.\n\n * 400 ElasticPoolDtuBelowLimit - The requested DTU value is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDtuAboveLimit - The requested DTU value is too high for the requested elastic pool service tier.\n\n * 400 InvalidMaxSize - Invalid max size.\n\n * 400 ElasticPoolDbDtuMaxBelowLimit - The requested per database DTU max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbDtuMaxAboveLimit - The requested per database DTU max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMax - Attempting to set the DTU max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbDtuMinAboveLimit - The requested DTU min per database is too high for the requested service tier.\n\n * 400 InvalidInputValueForDatabaseDtuMin - Attempting to set the DTU min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolInconsistentDtuGuaranteeSettings - Attempting to provide DTU min for databases in the elastic pool that exceeds requested DTUs of the elastic pool.\n\n * 400 ElasticPoolDtuUnsupported - User tried to create or update an elastic pool with a DTU capacity that is not supported.\n\n * 400 ElasticPoolStorageAboveLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolsNotEnabled - Elastic pools have not been enabled in this region.\n\n * 400 ElasticPoolNotEmpty - Request to delete an elastic pool that is not empty.\n\n * 400 ElasticPoolStorageBelowLimitGB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedGB - Attempting to set the elastic pool storage limit in gb which doesn't match the allowed values.\n\n * 400 ElasticPoolDatabaseLimit - The elastic pool has reached its limit for number of databases.\n\n * 400 ElasticPoolDecreaseStorageLimitBelowUsage - Attempting to decrease the storage limit of the elastic pool below its storage usage.\n\n * 400 ElasticPoolBusy - A management operation was attempted on an elastic pool which is busy.\n\n * 400 InvalidInputValueDatabaseDtuMinLargerThanMax - Attempting to set the DTU min per database higher than the DTU max per database.\n\n * 400 ElasticPoolInconsistentVcoreGuaranteeSettings - The number of databases and VCore min per database cannot exceed requested VCores of the elastic pool.\n\n * 400 ElasticPoolStorageBelowLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 ElasticPoolStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolCapacityStorageNotAllowedMB - Attempting to set the elastic pool storage limit in mb which doesn't match the allowed values.\n\n * 400 ElasticPoolStorageAboveLimitMB - Attempting to set the elastic pool storage limit below the supported limit.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 InvalidTier - The user specified an invalid tier.\n\n * 400 ElasticPoolUpdateHkNotAllowed - The elastic pool cannot lower its service tier from Premium to Standard or Basic since one or more of its databases use memory-optimized objects.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\n\n * 400 ElasticPoolDbDtuMinBelowLimit - The requested per database DTU min is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxBelowLimit - The requested per database VCore max is too low for the requested elastic pool service tier.\n\n * 400 ElasticPoolDbVcoreMaxAboveLimit - The requested per database VCore max is too high for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMax - Attempting to set the VCore max per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 ElasticPoolDbVcoreMinBelowLimit - The requested per database VCore min is too low for the requested elastic pool service tier.\n\n * 400 InvalidInputValueForDatabaseVcoreMin - Attempting to set the VCore min per database for the Resource Pool which doesn't match the allowed values.\n\n * 400 InvalidInputValueDatabaseVcoreMinLargerThanMax - Attempting to set the VCore min per database higher than the VCore max per database.\n\n * 400 InvalidLicenseType - User tried to create or update a database or elastic pool with unsupported license type.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ElasticPoolNotFound - The specified elastic pool does not exist for the specified server.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 405 NotSupported - This functionality is not supported.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ElasticPoolUpdateLinksNotInCatchup - Cannot update elastic pool while one of its databases is performing a copy or geo-replication failover operation.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable.\n\n * 503 ServiceTemporarilyUnavailable - Feature temporarily unavailable." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update an elastic pool with minimum parameters": { + "$ref": "./examples/ElasticPoolUpdateMin.json" + }, + "Update an elastic pool with all parameter": { + "$ref": "./examples/ElasticPoolUpdateMax.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/failover": { + "post": { + "tags": [ + "ElasticPools" + ], + "description": "Failovers an elastic pool.", + "operationId": "ElasticPools_Failover", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "elasticPoolName", + "in": "path", + "description": "The name of the elastic pool to failover.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed elastic pool failover." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 ElasticPoolFailoverThrottled - There was a recent failover on the elastic pool.\n\n * 400 ElasticPoolFailoverNotSupportedOnSKU - This type of customer initiated failover is not supported on the given SKU.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 ElasticPoolNotInStateToFailover - The elastic pool or a database within the elastic pool is currently in a state such that failover cannot be issued." + }, + "202": { + "description": "Elastic pool failover is in progress." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Failover an elastic pool": { + "$ref": "./examples/FailoverElasticPool.json" + } + } + } + } + }, + "definitions": { + "ElasticPoolListResult": { + "description": "The result of an elastic pool list request.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ElasticPool" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ElasticPoolProperties": { + "description": "Properties of an elastic pool", + "type": "object", + "properties": { + "state": { + "description": "The state of the elastic pool.", + "enum": [ + "Creating", + "Ready", + "Disabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ElasticPoolState", + "modelAsString": true + } + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of the elastic pool (ISO8601 format).", + "type": "string", + "readOnly": true + }, + "maxSizeBytes": { + "format": "int64", + "description": "The storage limit for the database elastic pool in bytes.", + "type": "integer" + }, + "perDatabaseSettings": { + "$ref": "#/definitions/ElasticPoolPerDatabaseSettings", + "description": "The per database settings for the elastic pool." + }, + "zoneRedundant": { + "description": "Whether or not this elastic pool is zone redundant, which means the replicas of this elastic pool will be spread across multiple availability zones.", + "type": "boolean" + }, + "licenseType": { + "description": "The license type to apply for this elastic pool.", + "enum": [ + "LicenseIncluded", + "BasePrice" + ], + "type": "string", + "x-ms-enum": { + "name": "ElasticPoolLicenseType", + "modelAsString": true + } + }, + "maintenanceConfigurationId": { + "description": "Maintenance configuration id assigned to the elastic pool. This configuration defines the period when the maintenance updates will be rolled out.", + "type": "string" + } + } + }, + "ElasticPoolPerDatabaseSettings": { + "description": "Per database settings of an elastic pool.", + "type": "object", + "properties": { + "minCapacity": { + "format": "double", + "description": "The minimum capacity all databases are guaranteed.", + "type": "number" + }, + "maxCapacity": { + "format": "double", + "description": "The maximum capacity any one database can consume.", + "type": "number" + } + } + }, + "ElasticPool": { + "description": "An elastic pool.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku", + "description": "The elastic pool SKU.\r\n\r\nThe list of SKUs may vary by region and support offer. To determine the SKUs (including the SKU name, tier/edition, family, and capacity) that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API or the following command:\r\n\r\n```azurecli\r\naz sql elastic-pool list-editions -l -o table\r\n````\r\n" + }, + "kind": { + "description": "Kind of elastic pool. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ElasticPoolProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ElasticPoolUpdate": { + "description": "An elastic pool update.", + "type": "object", + "properties": { + "sku": { + "$ref": "../../../common/v1/types.json#/definitions/Sku" + }, + "properties": { + "$ref": "#/definitions/ElasticPoolUpdateProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ElasticPoolUpdateProperties": { + "description": "Properties of an elastic pool", + "type": "object", + "properties": { + "maxSizeBytes": { + "format": "int64", + "description": "The storage limit for the database elastic pool in bytes.", + "type": "integer" + }, + "perDatabaseSettings": { + "$ref": "#/definitions/ElasticPoolPerDatabaseSettings", + "description": "The per database settings for the elastic pool." + }, + "zoneRedundant": { + "description": "Whether or not this elastic pool is zone redundant, which means the replicas of this elastic pool will be spread across multiple availability zones.", + "type": "boolean" + }, + "licenseType": { + "description": "The license type to apply for this elastic pool.", + "enum": [ + "LicenseIncluded", + "BasePrice" + ], + "type": "string", + "x-ms-enum": { + "name": "ElasticPoolLicenseType", + "modelAsString": true + } + }, + "maintenanceConfigurationId": { + "description": "Maintenance configuration id assigned to the elastic pool. This configuration defines the period when the maintenance updates will be rolled out.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "description": "The name of the workspace.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlPoolNameParameter": { + "name": "sqlPoolName", + "in": "path", + "description": "The name of the sql pool.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlDatabaseNameParameter": { + "name": "sqlDatabaseName", + "in": "path", + "description": "The name of the sql database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseCopyMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseCopyMode.json new file mode 100644 index 000000000000..bd3f658c3a1d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseCopyMode.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "dbcopy", + "api-version": "2020-08-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "Copy", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedServiceObjectiveName": "S0", + "storageAccountType": "GRS", + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "dbcopy", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedServiceObjectiveName": "S0", + "storageAccountType": "GRS", + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "dbcopy", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseDefaultMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseDefaultMode.json new file mode 100644 index 000000000000..70b97d09c8d3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseDefaultMode.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2020-08-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "Default", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "readScale": "Disabled", + "requestedServiceObjectiveName": "S0", + "storageAccountType": "GRS", + "zoneRedundant": false, + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "readScale": "Disabled", + "requestedServiceObjectiveName": "S0", + "storageAccountType": "GRS", + "zoneRedundant": false, + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseMin.json new file mode 100644 index 000000000000..c79e76a12d12 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseMin.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2020-08-01-preview", + "parameters": { + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedServiceObjectiveName": "S0", + "storageAccountType": "GRS", + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedServiceObjectiveName": "S0", + "storageAccountType": "GRS", + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseNamedReplica.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseNamedReplica.json new file mode 100644 index 000000000000..3f71f7c4c1ef --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseNamedReplica.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2020-08-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "capacity": 2 + }, + "properties": { + "createMode": "Secondary", + "secondaryType": "Named", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-NorthEurope/providers/Microsoft.Sql/servers/testsvr1/databases/primarydb" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user,vcore,hyperscale", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": -1, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 2 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "HS_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedServiceObjectiveName": "HS_Gen4_2", + "storageAccountType": "GRS", + "highAvailabilityReplicaCount": 0, + "licenseType": "LicenseIncluded", + "secondaryType": "Named", + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user,vcore,hyperscale", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": -1, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "HS_Gen4", + "tier": "Hyperscale", + "family": "Gen4", + "capacity": 2 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "HS_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedServiceObjectiveName": "HS_Gen4_2", + "storageAccountType": "GRS", + "highAvailabilityReplicaCount": 0, + "licenseType": "LicenseIncluded", + "secondaryType": "Named", + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabasePITRMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabasePITRMode.json new file mode 100644 index 000000000000..ac1df30711b7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabasePITRMode.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "dbpitr", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "PointInTimeRestore", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "restorePointInTime": "2017-07-14T05:35:31.503Z" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbpitr", + "name": "dbpitr", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbpitr", + "name": "dbpitr", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRecoveryMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRecoveryMode.json new file mode 100644 index 000000000000..a4f8cee34bc7 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRecoveryMode.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "dbrestore", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "Restore", + "restorableDroppedDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/restorableDroppedDatabases/testdb2,131444841315030000" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbrestore", + "name": "dbrestore", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbrestore", + "name": "dbrestore", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRestoreMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRestoreMode.json new file mode 100644 index 000000000000..93a6d13ce5db --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRestoreMode.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "dbrestore", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "Restore", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "sourceDatabaseDeletionDate": "2017-07-14T06:41:06.613Z" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbrestore", + "name": "dbrestore", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbrestore", + "name": "dbrestore", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRestoreMode2.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRestoreMode2.json new file mode 100644 index 000000000000..2a86acd6e7dc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseRestoreMode2.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "dbrestore", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "Restore", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/restorableDroppedDatabases/testdb,131403269876900000" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbrestore", + "name": "dbrestore", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "S0", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/dbrestore", + "name": "dbrestore", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseSecondaryMode.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseSecondaryMode.json new file mode 100644 index 000000000000..e93322c01165 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDatabaseSecondaryMode.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2020-08-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "createMode": "Secondary", + "secondaryType": "Geo", + "sourceDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-NorthEurope/providers/Microsoft.Sql/servers/testsvr1/databases/testdb" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedServiceObjectiveName": "S0", + "storageAccountType": "GRS", + "secondaryType": "Geo", + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "currentSku": { + "name": "Standard", + "tier": "Standard", + "capacity": 10 + }, + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "S0", + "defaultSecondaryLocation": "North Europe", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "requestedServiceObjectiveName": "S0", + "storageAccountType": "GRS", + "secondaryType": "Geo", + "zoneRedundant": false + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDwDatabaseByServiceObjective.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDwDatabaseByServiceObjective.json new file mode 100644 index 000000000000..24ce51c0777a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateDwDatabaseByServiceObjective.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdw", + "api-version": "2020-08-01-preview", + "parameters": { + "location": "westus", + "sku": { + "name": "DW1000c" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "DataWarehouse", + "tier": "DataWarehouse", + "capacity": 9000 + }, + "kind": "v12.0,user,datawarehouse,gen2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 263882790666240, + "status": "Online", + "databaseId": "188784c9-d602-4684-86cf-e67b6f03551a", + "creationDate": "2019-04-24T06:46:14.99Z", + "currentServiceObjectiveName": "DW1000c", + "requestedServiceObjectiveName": "DW1000c", + "defaultSecondaryLocation": "eastus", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "currentSku": { + "name": "DataWarehouse", + "tier": "DataWarehouse", + "capacity": 9000 + } + }, + "location": "westus", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdw", + "name": "testdw", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "DataWarehouse", + "tier": "DataWarehouse", + "capacity": 9000 + }, + "kind": "v12.0,user,datawarehouse,gen2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 263882790666240, + "status": "Online", + "databaseId": "188784c9-d602-4684-86cf-e67b6f03551a", + "creationDate": "2019-04-24T06:46:14.99Z", + "currentServiceObjectiveName": "DW1000c", + "requestedServiceObjectiveName": "DW1000c", + "defaultSecondaryLocation": "eastus", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "readScale": "Disabled", + "currentSku": { + "name": "DataWarehouse", + "tier": "DataWarehouse", + "capacity": 9000 + } + }, + "location": "westus", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdw", + "name": "testdw", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json new file mode 100644 index 000000000000..c9eebdb8f6ec --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateVCoreDatabaseByServiceObjective.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2020-08-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "BC", + "family": "Gen4", + "capacity": 2 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "storageAccountType": "GRS", + "zoneRedundant": false, + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "storageAccountType": "GRS", + "zoneRedundant": false, + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json new file mode 100644 index 000000000000..c799072075ae --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/CreateVCoreDatabaseBySkuNameCapacity.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2020-08-01-preview", + "parameters": { + "location": "southeastasia", + "sku": { + "name": "BC_Gen4", + "capacity": 2 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "storageAccountType": "GRS", + "zoneRedundant": false, + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "201": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "family": "Gen4", + "capacity": 2 + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "readScale": "Enabled", + "storageAccountType": "GRS", + "zoneRedundant": false, + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/DeleteDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/DeleteDatabase.json new file mode 100644 index 000000000000..c70d7532b66e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/DeleteDatabase.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolCreateOrUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolCreateOrUpdateMax.json new file mode 100644 index 000000000000..ba7e28028aac --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolCreateOrUpdateMax.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2017-10-01", + "parameters": { + "location": "Japan East", + "sku": { + "name": "GP_Gen4_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 2.0 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "GP_Gen4_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 2.0 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "GP_Gen4_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 2.0 + } + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolCreateOrUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolCreateOrUpdateMin.json new file mode 100644 index 000000000000..25f84bcd695a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolCreateOrUpdateMin.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2017-10-01", + "parameters": { + "location": "Japan East" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "StandardPool", + "tier": "Standard", + "capacity": 100 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 102400, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 100 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "StandardPool", + "tier": "Standard", + "capacity": 100 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 102400, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 100 + } + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolDelete.json new file mode 100644 index 000000000000..51394518bf8a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-3129", + "serverName": "sqlcrudtest-228", + "elasticPoolName": "sqlcrudtest-3851", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolGet.json new file mode 100644 index 000000000000..cf45ef3e3f45 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "GP_Gen5_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-10-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 1.0 + }, + "zoneRedundant": true, + "licenseType": "LicenseIncluded" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolListByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolListByServer.json new file mode 100644 index 000000000000..e0c9401d5e4a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolListByServer.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "api-version": "2017-10-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-2729", + "name": "sqlcrudtest-2729", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "GP_Gen4_2", + "tier": "GeneralPurpose", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-02-10T01:27:21.32Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 1.0 + }, + "zoneRedundant": true, + "licenseType": "LicenseIncluded" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-3191", + "name": "sqlcrudtest-3191", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BasicPool", + "tier": "Basic", + "capacity": 50 + }, + "properties": { + "creationDate": "2017-02-10T01:26:26.45Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 5 + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BasicPool", + "tier": "Basic", + "capacity": 50 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 5 + } + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolUpdateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolUpdateMax.json new file mode 100644 index 000000000000..50ab53f4d887 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolUpdateMax.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2017-10-01", + "parameters": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "properties": { + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 1.0 + }, + "zoneRedundant": true, + "licenseType": "LicenseIncluded" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "properties": { + "creationDate": "2017-02-10T01:27:21.32Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0.25, + "maxCapacity": 1.0 + }, + "zoneRedundant": true, + "licenseType": "LicenseIncluded" + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolUpdateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolUpdateMin.json new file mode 100644 index 000000000000..798ef7b5c92e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ElasticPoolUpdateMin.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-2369", + "serverName": "sqlcrudtest-8069", + "elasticPoolName": "sqlcrudtest-8102", + "api-version": "2017-10-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-2369/providers/Microsoft.Sql/servers/sqlcrudtest-8069/elasticPools/sqlcrudtest-8102", + "name": "sqlcrudtest-8102", + "type": "Microsoft.Sql/servers/elasticPools", + "location": "Japan East", + "kind": null, + "sku": { + "name": "BasicPool", + "tier": "Basic", + "capacity": 50 + }, + "properties": { + "creationDate": "2017-02-10T01:25:25.033Z", + "state": "Ready", + "maxSizeBytes": 5242880000, + "perDatabaseSettings": { + "minCapacity": 0, + "maxCapacity": 5 + } + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/FailoverDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/FailoverDatabase.json new file mode 100644 index 000000000000..c527b9727123 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/FailoverDatabase.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "testServer", + "databaseName": "testDatabase", + "replicaType": "Primary", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/FailoverElasticPool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/FailoverElasticPool.json new file mode 100644 index 000000000000..0f1687215bf3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/FailoverElasticPool.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "group1", + "serverName": "testServer", + "elasticPoolName": "testElasticPool", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/GetVCoreDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/GetVCoreDatabase.json new file mode 100644 index 000000000000..5b11ead71661 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/GetVCoreDatabase.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 2 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen5_2", + "requestedServiceObjectiveName": "BC_Gen5_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "storageAccountType": "GRS", + "zoneRedundant": false, + "readScale": "Enabled", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "currentSku": { + "name": "BC_Gen5", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ListDatabasesByElasticPool.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ListDatabasesByElasticPool.json new file mode 100644 index 000000000000..80fd7a64f5c8 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ListDatabasesByElasticPool.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "elasticPoolName": "pool1", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "ElasticPool", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "elasticPoolId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/elasticPools/Pool1", + "status": "Online", + "databaseId": "bfe0735f-bc87-447f-b2c2-481f4b100614", + "creationDate": "2017-07-12T22:08:39.163Z", + "currentServiceObjectiveName": "ElasticPool", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/DB001", + "name": "DB001", + "type": "Microsoft.Sql/servers/databases" + }, + { + "sku": { + "name": "ElasticPool", + "tier": "Standard" + }, + "kind": "v12.0,user", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "elasticPoolId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/elasticPools/Pool1", + "status": "Online", + "databaseId": "82246152-3177-4357-b81c-a16d87ce3593", + "creationDate": "2017-07-12T22:10:10.773Z", + "currentServiceObjectiveName": "ElasticPool", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/DB002", + "name": "DB002", + "type": "Microsoft.Sql/servers/databases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ListVCoreDatabasesByServer.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ListVCoreDatabasesByServer.json new file mode 100644 index 000000000000..06adab346f71 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ListVCoreDatabasesByServer.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "api-version": "2020-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "requestedServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "storageAccountType": "GRS", + "zoneRedundant": false, + "readScale": "Enabled", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 2 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + }, + { + "sku": { + "name": "System0", + "tier": "System", + "capacity": 0 + }, + "kind": "v12.0,system", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 32212254720, + "status": "Online", + "databaseId": "e6be351f-2cc9-4604-9e52-b0b28b2710b0", + "creationDate": "2017-06-07T04:23:42.537Z", + "currentServiceObjectiveName": "System0", + "requestedServiceObjectiveName": "System0", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "storageAccountType": "GRS", + "zoneRedundant": false, + "readScale": "Disabled", + "currentSku": { + "name": "System0", + "tier": "System", + "capacity": 0 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/master", + "name": "master", + "type": "Microsoft.Sql/servers/databases" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/PatchVCoreDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/PatchVCoreDatabase.json new file mode 100644 index 000000000000..7e9119481071 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/PatchVCoreDatabase.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2020-08-01-preview", + "parameters": { + "sku": { + "name": "BC_Gen4_4" + }, + "properties": { + "maxSizeBytes": 1073741824, + "licenseType": "LicenseIncluded" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 4 + }, + "kind": "v12.0,user,vcore", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 1073741824, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-06-07T04:41:33.937Z", + "currentServiceObjectiveName": "BC_Gen4_2", + "requestedServiceObjectiveName": "BC_Gen4_2", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS", + "licenseType": "LicenseIncluded", + "maxLogSizeBytes": 104857600, + "storageAccountType": "GRS", + "zoneRedundant": false, + "readScale": "Enabled", + "earliestRestoreDate": "2017-06-07T04:51:33.937Z", + "currentSku": { + "name": "BC_Gen4", + "tier": "BusinessCritical", + "capacity": 4 + } + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdb", + "name": "testdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/PauseDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/PauseDatabase.json new file mode 100644 index 000000000000..a2b0165e525b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/PauseDatabase.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdwdb", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "DataWarehouse" + }, + "kind": "v12.0,user,datawarehouse", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 10995116277760, + "status": "Paused", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-07-13T02:04:26.187Z", + "currentServiceObjectiveName": "D1", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdwdb", + "name": "testdwdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/RenameDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/RenameDatabase.json new file mode 100644 index 000000000000..963ff8794aad --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/RenameDatabase.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdb", + "api-version": "2017-03-01-preview", + "parameters": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/newtestdb" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ResumeDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ResumeDatabase.json new file mode 100644 index 000000000000..19265add6d6b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/ResumeDatabase.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdwdb", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "DataWarehouse" + }, + "kind": "v12.0,user,datawarehouse", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 10995116277760, + "status": "Online", + "databaseId": "6c764297-577b-470f-9af4-96d3d41e2ba3", + "creationDate": "2017-07-13T02:04:26.187Z", + "currentServiceObjectiveName": "D1", + "defaultSecondaryLocation": "North Europe", + "catalogCollation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/servers/testsvr/databases/testdwdb", + "name": "testdwdb", + "type": "Microsoft.Sql/servers/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/UpgradeDataWarehouse.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/UpgradeDataWarehouse.json new file mode 100644 index 000000000000..76aed8cca6eb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-08-01-preview/examples/UpgradeDataWarehouse.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "serverName": "testsvr", + "databaseName": "testdwdb", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index 697171636433..0682ecf919c1 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -485,6 +485,26 @@ override-info: The following packages are each composed of all apis from only one api-version. +### Tag: package-pure-2020-08-preview + +These settings apply only when `--tag=package-pure-2020-08-preview` is specified on the command line. + +This section contains all input swagger files for version 2020-08-01-preview. All APIs of that version must be added this section when the API is ready for production. + +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. + +These can be regenerated by running the following PowerShell script from this readme file's folder: `dir .\Microsoft.Sql\preview\2020-08-01-preview\ -File | Resolve-Path -Relative | % { " - $_".Replace("\", "/") }` + +``` yaml $(tag) == 'package-pure-2020-08-preview' +input-file: +- ./Microsoft.Sql/preview/2020-08-01-preview/databases.json +- ./Microsoft.Sql/preview/2020-08-01-preview/elasticPools.json + +# Needed when there is more than one input file +override-info: + title: SqlManagementClient + ``` + ### Tag: package-pure-2020-02-preview These settings apply only when `--tag=package-pure-2020-02-preview` is specified on the command line. From 9ac696a6329fe3ca6aa4dca347a65cc4845c36b0 Mon Sep 17 00:00:00 2001 From: rapatank <69176921+rapatank@users.noreply.github.com> Date: Sun, 20 Sep 2020 20:04:08 -0700 Subject: [PATCH 05/37] Powerplatformrp (#10849) * PowerPlatform RP specifications * PowerPlatform changes * Updating powerplatform json * Update definitions.json * Updating the schema * Updated the schema. * Updates to schema * Schema update * Schema update * Example update * Update description * Updating the swagger * Updating the swagger definition * Swagger update. * Swagger updates * Adding private link changes. * Updates to readme.md * Private link updates * Schema update * private link update * response update * Added systemData * Updated description. * Adding subnet configuration * readme update. * Adding systemData. * Updated example * Update * Update to systemData * Updates * Updates * Updated the version of common types * readme.go update * Update * Updated version * version update * update * update * Updated "enterprisePromise" to "enterprisePolicy". * Updates * Updates * Updating to use common type * updates * Update for lockbox * Update * update * update --- .../2020-10-30-preview/enterprisePolicy.json | 77 +++++++++++-------- 1 file changed, 45 insertions(+), 32 deletions(-) diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json index 677c74402f5c..be9705bbdfad 100644 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json @@ -394,20 +394,58 @@ }, "definitions": { "EnterprisePolicy": { + "type": "object", + "description": "Definition of the EnterprisePolicy.", + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ], "properties": { "identity": { "$ref": "#/definitions/EnterprisePolicyIdentity", "description": "The identity of the EnterprisePolicy." + }, + "properties": { + "$ref": "#/definitions/ConfigurationProperties", + "description": "The properties that define configuration.", + "x-ms-client-flatten": true } - }, - "allOf": [ - { - "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + }, + "ConfigurationProperties": { + "type": "object", + "description": "The properties that define configuration for the enterprise policy.", + "properties": { + "lockbox": { + "type": "object", + "description": "Settings concerning lockbox.", + "properties": { + "status": { + "$ref": "#/definitions/status", + "description": "lockbox configuration" + } + } + }, + "encryption": { + "type": "object", + "description": "The encryption settings for a configuration store.", + "properties": { + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Key vault properties." + } + } + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource." } - ], - "description": "Definition of the EnterprisePolicy." + } }, "EnterprisePolicyIdentity": { + "type": "object", + "description": "The identity of the EnterprisePolicy.", "properties": { "systemAssignedIdentityPrincipalId": { "readOnly": true, @@ -430,33 +468,8 @@ "name": "ResourceIdentityType", "modelAsString": false } - }, - "lockbox": { - "type": "object", - "description": "Settings concerning lockbox.", - "properties": { - "status": { - "$ref": "#/definitions/status", - "description": "lockbox configuration" - } - } - }, - "encryption": { - "type": "object", - "description": "The encryption settings for a configuration store.", - "properties": { - "keyVaultProperties": { - "$ref": "#/definitions/KeyVaultProperties", - "description": "Key vault properties." - } - } - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", - "description": "Metadata for the enterprisePolicy." } - }, - "description": "Identity for the EnterprisePolicy." + } }, "status": { "type": "string", From 0585f3ed2ee1b3fa6b38bf6751b61117222c0b01 Mon Sep 17 00:00:00 2001 From: Xiaoying Zhang Date: Mon, 21 Sep 2020 12:29:48 +0800 Subject: [PATCH 06/37] [datafactory] add support for azure databricks delta lake (#10794) --- .../2018-06-01/entityTypes/Dataset.json | 30 ++++++++ .../2018-06-01/entityTypes/LinkedService.json | 44 +++++++++++ .../2018-06-01/entityTypes/Pipeline.json | 76 +++++++++++++++++++ 3 files changed, 150 insertions(+) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json index 61a6bfadf4a7..e4541926b2ae 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json @@ -3249,6 +3249,36 @@ "description": "The name of the SharePoint Online list. Type: string (or Expression with resultType string)." } } + }, + "AzureDatabricksDeltaLakeDataset": { + "x-ms-discriminator-value": "AzureDatabricksDeltaLakeDataset", + "description": "Azure Databricks Delta Lake dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDatabricksDeltaLakeDatasetTypeProperties" + } + } + }, + "AzureDatabricksDeltaLakeDatasetTypeProperties": { + "description": "Azure Databricks Delta Lake Dataset Properties", + "properties": { + "table": { + "type": "object", + "description": "The name of delta table. Type: string (or Expression with resultType string)." + }, + "database": { + "type": "object", + "description": "The database name of delta table. Type: string (or Expression with resultType string)." + } + } } } } diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json index a25553b01b00..11c8aca43d61 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json @@ -5322,6 +5322,50 @@ "accessToken" ] }, + "AzureDatabricksDeltaLakeLinkedService": { + "x-ms-discriminator-value": "AzureDatabricksDeltaLake", + "description": "Azure Databricks Delta Lake linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Databricks Delta Lake linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDatabricksDetltaLakeLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDatabricksDetltaLakeLinkedServiceTypeProperties": { + "description": "Azure Databricks Delta Lake linked service properties.", + "properties": { + "domain": { + "type": "object", + "description": ".azuredatabricks.net, domain name of your Databricks deployment. Type: string (or Expression with resultType string)." + }, + "accessToken": { + "description": "Access token for databricks REST API. Refer to https://docs.azuredatabricks.net/api/latest/authentication.html. Type: string, SecureString or AzureKeyVaultSecretReference.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "clusterId": { + "type": "object", + "description": "The id of an existing interactive cluster that will be used for all runs of this job. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "domain" + ] + }, "ResponsysLinkedService": { "x-ms-discriminator-value": "Responsys", "description": "Responsys linked service.", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json index be8062d5491d..91f6e3475c66 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json @@ -3621,6 +3621,82 @@ } } }, + "AzureDatabricksDeltaLakeSource": { + "description": "A copy activity Azure Databricks Delta Lake source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Azure Databricks Delta Lake Sql query. Type: string (or Expression with resultType string)." + }, + "exportSettings": { + "$ref": "#/definitions/AzureDatabricksDeltaLakeExportCommand", + "description": "Azure Databricks Delta Lake export settings." + } + } + }, + "AzureDatabricksDeltaLakeExportCommand": { + "description": "Azure Databricks Delta Lake export command settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExportSettings" + } + ], + "properties": { + "dateFormat": { + "type": "object", + "description": "Specify the date format for the csv in Azure Databricks Delta Lake Copy. Type: string (or Expression with resultType string)." + }, + "timestampFormat": { + "type": "object", + "description": "Specify the timestamp format for the csv in Azure Databricks Delta Lake Copy. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDatabricksDeltaLakeSink": { + "description": "A copy activity Azure Databricks Delta Lake sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "importSettings": { + "$ref": "#/definitions/AzureDatabricksDeltaLakeImportCommand", + "description": "Azure Databricks Delta Lake import settings." + } + } + }, + "AzureDatabricksDeltaLakeImportCommand": { + "description": "Azure Databricks Delta Lake import command settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ImportSettings" + } + ], + "properties": { + "dateFormat": { + "type": "object", + "description": "Specify the date format for csv in Azure Databricks Delta Lake Copy. Type: string (or Expression with resultType string)." + }, + "timestampFormat": { + "type": "object", + "description": "Specify the timestamp format for csv in Azure Databricks Delta Lake Copy. Type: string (or Expression with resultType string)." + } + } + }, "StoredProcedureParameter": { "description": "SQL stored procedure parameter.", "type": "object", From 451997a2c7b7ba27196d46835af3311172371340 Mon Sep 17 00:00:00 2001 From: Jingshu923 <52914166+Jingshu923@users.noreply.github.com> Date: Mon, 21 Sep 2020 13:14:12 +0800 Subject: [PATCH 07/37] [Datafactory] update readme.md and DynamicsSinkWriteBehavior resolve the PR has python sdk break change (#10807) * [Datafactory] update readme.md and DynamicsSinkWriteBehavior * update python.md * Fix lint rule errors --- .../2018-06-01/entityTypes/DataFlow.json | 11 +++++ .../2018-06-01/entityTypes/Dataset.json | 11 +++++ .../entityTypes/IntegrationRuntime.json | 11 +++++ .../2018-06-01/entityTypes/LinkedService.json | 11 +++++ .../entityTypes/ManagedPrivateEndpoint.json | 11 +++++ .../entityTypes/ManagedVirtualNetwork.json | 11 +++++ .../2018-06-01/entityTypes/Pipeline.json | 49 ++++++++++--------- .../2018-06-01/entityTypes/Trigger.json | 11 +++++ .../datafactory/resource-manager/readme.md | 7 +++ .../resource-manager/readme.python.md | 1 + 10 files changed, 110 insertions(+), 24 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/DataFlow.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/DataFlow.json index bdac90ebf99b..63e8f1b14468 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/DataFlow.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/DataFlow.json @@ -4,6 +4,17 @@ "title": "DataFactoryManagementClient", "version": "2018-06-01" }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, "paths": {}, "definitions": { "DataFlow": { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json index e4541926b2ae..a573ecd8bde4 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json @@ -4,6 +4,17 @@ "title": "DataFactoryManagementClient", "version": "2018-06-01" }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, "paths": {}, "definitions": { "Dataset": { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json index fe1f683bd72c..00dbf932a1d5 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json @@ -4,6 +4,17 @@ "title": "DataFactoryManagementClient", "version": "2018-06-01" }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, "paths": {}, "definitions": { "IntegrationRuntime": { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json index 11c8aca43d61..ac022366955a 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json @@ -4,6 +4,17 @@ "title": "DataFactoryManagementClient", "version": "2018-06-01" }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, "paths": {}, "definitions": { "LinkedService": { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedPrivateEndpoint.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedPrivateEndpoint.json index 2aa2ace47536..068ad1370cda 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedPrivateEndpoint.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedPrivateEndpoint.json @@ -4,6 +4,17 @@ "title": "DataFactoryManagementClient", "version": "2018-06-01" }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, "paths": {}, "definitions": { "ManagedPrivateEndpoint": { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedVirtualNetwork.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedVirtualNetwork.json index e1a1e226c159..486abeced71c 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedVirtualNetwork.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedVirtualNetwork.json @@ -4,6 +4,17 @@ "title": "DataFactoryManagementClient", "version": "2018-06-01" }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, "paths": {}, "definitions": { "ManagedVirtualNetwork": { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json index 91f6e3475c66..ea95f8ea806d 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json @@ -4,6 +4,17 @@ "title": "DataFactoryManagementClient", "version": "2018-06-01" }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, "paths": {}, "definitions": { "Pipeline": { @@ -4507,6 +4518,17 @@ } } }, + "DynamicsSinkWriteBehavior": { + "description": "Defines values for DynamicsSinkWriteBehavior.", + "type": "string", + "enum": [ + "Upsert" + ], + "x-ms-enum": { + "name": "DynamicsSinkWriteBehavior", + "modelAsString": true + } + }, "DynamicsSink": { "description": "A copy activity Dynamics sink.", "type": "object", @@ -4518,14 +4540,7 @@ "properties": { "writeBehavior": { "description": "The write behavior for the operation.", - "type": "string", - "enum": [ - "Upsert" - ], - "x-ms-enum": { - "name": "DynamicsSinkWriteBehavior", - "modelAsString": true - } + "$ref": "#/definitions/DynamicsSinkWriteBehavior" }, "ignoreNullValues": { "type": "object", @@ -4551,14 +4566,7 @@ "properties": { "writeBehavior": { "description": "The write behavior for the operation.", - "type": "string", - "enum": [ - "Upsert" - ], - "x-ms-enum": { - "name": "DynamicsSinkWriteBehavior", - "modelAsString": true - } + "$ref": "#/definitions/DynamicsSinkWriteBehavior" }, "ignoreNullValues": { "type": "object", @@ -4584,14 +4592,7 @@ "properties": { "writeBehavior": { "description": "The write behavior for the operation.", - "type": "string", - "enum": [ - "Upsert" - ], - "x-ms-enum": { - "name": "DynamicsSinkWriteBehavior", - "modelAsString": true - } + "$ref": "#/definitions/DynamicsSinkWriteBehavior" }, "ignoreNullValues": { "type": "object", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json index 6423f41ed7d3..b9ff8cce6b89 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json @@ -4,6 +4,17 @@ "title": "DataFactoryManagementClient", "version": "2018-06-01" }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, "paths": {}, "definitions": { "Trigger": { diff --git a/specification/datafactory/resource-manager/readme.md b/specification/datafactory/resource-manager/readme.md index 73ba78baf313..764f413e92bb 100644 --- a/specification/datafactory/resource-manager/readme.md +++ b/specification/datafactory/resource-manager/readme.md @@ -37,6 +37,13 @@ These settings apply only when `--tag=package-2018-06` is specified on the comma ``` yaml $(tag) == 'package-2018-06' input-file: - Microsoft.DataFactory/stable/2018-06-01/datafactory.json +- Microsoft.DataFactory/stable/2018-06-01/entityTypes/DataFlow.json +- Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json +- Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json +- Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json +- Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedPrivateEndpoint.json +- Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +- Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json ``` ### Tag: package-2017-09-preview diff --git a/specification/datafactory/resource-manager/readme.python.md b/specification/datafactory/resource-manager/readme.python.md index 56d82b37fb7a..51f2c51d2ce3 100644 --- a/specification/datafactory/resource-manager/readme.python.md +++ b/specification/datafactory/resource-manager/readme.python.md @@ -9,6 +9,7 @@ python-mode: create python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 namespace: azure.mgmt.datafactory package-name: azure-mgmt-datafactory package-version: 1.0.0 From fce3400431eff281bddd04bed9727e63765b8da0 Mon Sep 17 00:00:00 2001 From: Kayden Wilkinson <69224099+Kawilki-M@users.noreply.github.com> Date: Sun, 20 Sep 2020 23:32:28 -0700 Subject: [PATCH 08/37] Removed object from NatGateway CreateOrUpdate Response (#10833) * Removed object from NatGateway CreateOrUpdate Response * fixed syntax * removed object from example response * ran prettier --- .../examples/NatGatewayCreateOrUpdate.json | 31 +------------------ .../stable/2020-06-01/natGateway.json | 5 +-- 2 files changed, 2 insertions(+), 34 deletions(-) diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/examples/NatGatewayCreateOrUpdate.json index 4c4763daf114..fe1cc02b707c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/examples/NatGatewayCreateOrUpdate.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/examples/NatGatewayCreateOrUpdate.json @@ -84,35 +84,6 @@ "type": "Microsoft.Network/natGateways" } }, - "202": { - "body": { - "name": "test-natGateway", - "sku": { - "name": "Standard" - }, - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateways/test-natGateway", - "location": "westus", - "properties": { - "idleTimeoutInMinutes": 5, - "provisioningState": "Succeeded", - "publicIpAddresses": [ - { - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" - } - ], - "publicIpPrefixes": [ - { - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" - } - ], - "subnets": [ - { - "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" - } - ] - }, - "type": "Microsoft.Network/natGateways" - } - } + "202": {} } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/natGateway.json index 76240b24ca24..d2ad3c4d7d54 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/natGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-06-01/natGateway.json @@ -196,10 +196,7 @@ } }, "202": { - "description": "Accepted and the operation will complete asynchronously.", - "schema": { - "$ref": "#/definitions/NatGateway" - } + "description": "Accepted and the operation will complete asynchronously." }, "default": { "description": "Error response describing why the operation failed.", From fc8fba8a6e7d4ae9a95fab3c5e63dcae131aec08 Mon Sep 17 00:00:00 2001 From: danikaZ Date: Mon, 21 Sep 2020 02:23:02 -0700 Subject: [PATCH 09/37] Add private endpoint names for datasync (#10264) * Add private endpoint names for datasync * fix prettier formatting --- .../2019-06-01-preview/examples/SyncGroupCreate.json | 8 +++++--- .../2019-06-01-preview/examples/SyncGroupGet.json | 3 ++- .../examples/SyncGroupListByDatabase.json | 6 ++++-- .../2019-06-01-preview/examples/SyncGroupPatch.json | 5 +++-- .../2019-06-01-preview/examples/SyncGroupUpdate.json | 5 +++-- .../examples/SyncMemberCreate.json | 12 +++++++----- .../2019-06-01-preview/examples/SyncMemberGet.json | 7 ++++--- .../examples/SyncMemberListBySyncGroup.json | 5 +++-- .../2019-06-01-preview/examples/SyncMemberPatch.json | 7 ++++--- .../examples/SyncMemberUpdate.json | 12 +++++++----- .../preview/2019-06-01-preview/syncGroups.json | 5 +++++ .../preview/2019-06-01-preview/syncMembers.json | 5 +++++ 12 files changed, 52 insertions(+), 28 deletions(-) diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupCreate.json index 8a6f8994ec21..4e3e8b72fcb9 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupCreate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupCreate.json @@ -12,7 +12,7 @@ "conflictResolutionPolicy": "HubWin", "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true } } }, @@ -26,7 +26,8 @@ "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", "syncState": "NotReady", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" }, "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", "name": "syncgroupcrud-3187", @@ -42,7 +43,8 @@ "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", "syncState": "NotReady", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" }, "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", "name": "syncgroupcrud-3187", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupGet.json index 8a88e81a9966..e6ef35ca3529 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupGet.json @@ -17,7 +17,8 @@ "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", "syncState": "NotReady", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" }, "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", "name": "syncgroupcrud-3187", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupListByDatabase.json index 4b6924abcdd7..1064d36aa5ff 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupListByDatabase.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupListByDatabase.json @@ -18,7 +18,8 @@ "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", "syncState": "NotReady", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" }, "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", "name": "syncgroupcrud-3187", @@ -32,7 +33,8 @@ "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", "syncState": "NotReady", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-5374" }, "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-5374", "name": "syncgroupcrud-5374", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupPatch.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupPatch.json index 9ac1bb8b2539..3422c3658d7a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupPatch.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupPatch.json @@ -13,7 +13,7 @@ "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", "hubDatabasePassword": "hubPassword", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true } } }, @@ -27,7 +27,8 @@ "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", "syncState": "NotReady", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" }, "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", "name": "syncgroup", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupUpdate.json index 8a6f8994ec21..f9b4510c13fc 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupUpdate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncGroupUpdate.json @@ -12,7 +12,7 @@ "conflictResolutionPolicy": "HubWin", "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true } } }, @@ -26,7 +26,8 @@ "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328", "hubDatabaseUserName": "hubUser", "syncState": "NotReady", - "usePrivateLinkConnection": false + "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187" }, "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187", "name": "syncgroupcrud-3187", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberCreate.json index 1ccc734d27a2..6fe4b6bfa44c 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberCreate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberCreate.json @@ -5,7 +5,7 @@ "serverName": "syncgroupcrud-8475", "databaseName": "syncgroupcrud-4328", "syncGroupName": "syncgroupcrud-3187", - "syncMemberName": "syncgroupcrud-4879", + "syncMemberName": "syncmembercrud-4879", "api-version": "2019-06-01-preview", "parameters": { "properties": { @@ -30,10 +30,11 @@ "syncDirection": "Bidirectional", "syncState": "UnProvisioned", "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" }, - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncgroupcrud-4879", - "name": "syncgroupcrud-4879", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" } }, @@ -47,10 +48,11 @@ "syncDirection": "Bidirectional", "syncState": "UnProvisioned", "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" }, - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncgroupcrud-4879", - "name": "syncgroupcrud-4879", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberGet.json index 8a1e356bfa96..a6a3c58866ce 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberGet.json @@ -5,7 +5,7 @@ "serverName": "syncgroupcrud-8475", "databaseName": "syncgroupcrud-4328", "syncGroupName": "syncgroupcrud-3187", - "syncMemberName": "syncgroupcrud-4879", + "syncMemberName": "syncmembercrud-4879", "api-version": "2019-06-01-preview" }, "responses": { @@ -19,10 +19,11 @@ "syncDirection": "Bidirectional", "syncState": "UnProvisioned", "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" }, - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncgroupcrud-4879", - "name": "syncgroupcrud-4879", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberListBySyncGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberListBySyncGroup.json index 11497c9e4d7d..3c575b5481a4 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberListBySyncGroup.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberListBySyncGroup.json @@ -20,10 +20,11 @@ "syncDirection": "Bidirectional", "syncState": "UnProvisioned", "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" }, - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncgroupcrud-4879", - "name": "syncgroupcrud-4879", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" } ] diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberPatch.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberPatch.json index 1746bb5774c7..1bccaea25d3f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberPatch.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberPatch.json @@ -5,7 +5,7 @@ "serverName": "syncgroupcrud-8475", "databaseName": "syncgroupcrud-4328", "syncGroupName": "syncgroupcrud-3187", - "syncMemberName": "syncgroupcrud-4879", + "syncMemberName": "syncmembercrud-4879", "api-version": "2019-06-01-preview", "parameters": { "properties": { @@ -30,10 +30,11 @@ "syncDirection": "Bidirectional", "syncState": "UnProvisioned", "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" }, - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncgroupcrud-4879", - "name": "syncgroupcrud-4879", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberUpdate.json index 1ccc734d27a2..6fe4b6bfa44c 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberUpdate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/SyncMemberUpdate.json @@ -5,7 +5,7 @@ "serverName": "syncgroupcrud-8475", "databaseName": "syncgroupcrud-4328", "syncGroupName": "syncgroupcrud-3187", - "syncMemberName": "syncgroupcrud-4879", + "syncMemberName": "syncmembercrud-4879", "api-version": "2019-06-01-preview", "parameters": { "properties": { @@ -30,10 +30,11 @@ "syncDirection": "Bidirectional", "syncState": "UnProvisioned", "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" }, - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncgroupcrud-4879", - "name": "syncgroupcrud-4879", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" } }, @@ -47,10 +48,11 @@ "syncDirection": "Bidirectional", "syncState": "UnProvisioned", "usePrivateLinkConnection": true, + "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncmembercrud-4879", "syncMemberAzureDatabaseResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328" }, - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncgroupcrud-4879", - "name": "syncgroupcrud-4879", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187/syncMembers/syncmembercrud-4879", + "name": "syncmembercrud-4879", "type": "Microsoft.Sql/servers/databases/syncGroups/syncMembers" } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json index ab80ff901950..442a8da5bfa8 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json @@ -932,6 +932,11 @@ "usePrivateLinkConnection": { "description": "If use private link connection is enabled.", "type": "boolean" + }, + "privateEndpointName": { + "description": "Private endpoint name of the sync group if use private link connection is enabled.", + "type": "string", + "readOnly": true } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json index ba60112d1b74..dc905b399be8 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json @@ -504,6 +504,11 @@ "description": "Whether to use private link connection.", "type": "boolean" }, + "privateEndpointName": { + "description": "Private endpoint name of the sync member if use private link connection is enabled, for sync members in Azure.", + "type": "string", + "readOnly": true + }, "serverName": { "description": "Server name of the member database in the sync member", "type": "string" From f64d232ce9d05ca4cb06c2ef319df501890e2327 Mon Sep 17 00:00:00 2001 From: changlong-liu <59815250+changlong-liu@users.noreply.github.com> Date: Mon, 21 Sep 2020 17:49:31 +0800 Subject: [PATCH 10/37] track2 GA (#10778) --- documentation/code-gen/configure-python-sdk.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/documentation/code-gen/configure-python-sdk.md b/documentation/code-gen/configure-python-sdk.md index 503f5acb1ec0..ad14782c78e2 100644 --- a/documentation/code-gen/configure-python-sdk.md +++ b/documentation/code-gen/configure-python-sdk.md @@ -86,7 +86,8 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python // for track1 SDK + - repo: azure-sdk-for-python-track2 // for track2 SDK - ... @@ -226,12 +227,13 @@ After configure all the readme files, autorest can be used to generate SDK. Track1 SDK is based on AutoRest version V2 that's going to be replaced by version V3. ~~~ -autorest --keep-version-file --multiapi --no-async --python --python-mode=update --python-sdks-folder=C:\ZZ\projects\codegen\azure-sdk-for-python\sdk --use=@microsoft.azure/autorest.python@~4.0.71 --version=V2 ..\azure-rest-api-specs\specification\appconfiguration\resource-manager\readme.md +> autorest --keep-version-file --multiapi --no-async --python --python-mode=update --python-sdks-folder=C:\ZZ\projects\codegen\azure-sdk-for-python\sdk --use=@microsoft.azure/autorest.python@~4.0.71 --version=V2 ..\azure-rest-api-specs\specification\appconfiguration\resource-manager\readme.md ~~~ ### Track2 (for latest Autorest) Track 2 is based on the latest AutoRest code generator ~~~ -autorest --python --track2 --use=@autorest/python@5.1.0-preview.4 --python-sdks-folder=..\azure-sdk-for-python\sdk --multiapi --python-mode=update ..\azure-rest-api-specs\specification\appconfiguration\resource-manager\readme.md +> autorest --reset +> autorest --python --track2 --use=@autorest/python@5.3.0 --python-sdks-folder=..\azure-sdk-for-python\sdk --multiapi --python-mode=update ..\azure-rest-api-specs\specification\appconfiguration\resource-manager\readme.md ~~~ \ No newline at end of file From 88986734626dd8b11b0a11b3cbb32cfdf3196c36 Mon Sep 17 00:00:00 2001 From: rapatank <69176921+rapatank@users.noreply.github.com> Date: Mon, 21 Sep 2020 05:50:46 -0700 Subject: [PATCH 11/37] Powerplatformrp (#10852) * PowerPlatform RP specifications * PowerPlatform changes * Updating powerplatform json * Update definitions.json * Updating the schema * Updated the schema. * Updates to schema * Schema update * Schema update * Example update * Update description * Updating the swagger * Updating the swagger definition * Swagger update. * Swagger updates * Adding private link changes. * Updates to readme.md * Private link updates * Schema update * private link update * response update * Added systemData * Updated description. * Adding subnet configuration * readme update. * Adding systemData. * Updated example * Update * Update to systemData * Updates * Updates * Updated the version of common types * readme.go update * Update * Updated version * version update * update * update * Updated "enterprisePromise" to "enterprisePolicy". * Updates * Updates * Updating to use common type * updates * Update for lockbox * Update * update * update * update * update * update * update --- .../preview/2020-10-30-preview/enterprisePolicy.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json index be9705bbdfad..b9b6ba659420 100644 --- a/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json +++ b/specification/powerplatform/resource-manager/Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json @@ -398,6 +398,7 @@ "description": "Definition of the EnterprisePolicy.", "allOf": [ { + "description": "The resource model definition for a ARM tracked top level resource.", "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" } ], @@ -407,13 +408,13 @@ "description": "The identity of the EnterprisePolicy." }, "properties": { - "$ref": "#/definitions/ConfigurationProperties", - "description": "The properties that define configuration.", + "$ref": "#/definitions/Properties", + "description": "The properties that define configuration for the enterprise policy", "x-ms-client-flatten": true } } }, - "ConfigurationProperties": { + "Properties": { "type": "object", "description": "The properties that define configuration for the enterprise policy.", "properties": { From 2cb80cf6668074c84cf02cf45b6bb897eff47e9b Mon Sep 17 00:00:00 2001 From: paornela <70660621+paornela@users.noreply.github.com> Date: Mon, 21 Sep 2020 10:48:32 -0700 Subject: [PATCH 12/37] [Hub Generated] Review request for Microsoft.CostManagement to add version stable/2020-06-01 (#10727) * Creating separate swagger file for exports * add exports swagger to readme * edit api version * add "TheLast7Days" to exports timeframes * remove 'TheLast7Days' from export timeframes * prettier fix * prettier fix 2 --- .../2020-06-01/costmanagement.exports.json | 1139 +++++++++++++++++ .../stable/2020-06-01/costmanagement.json | 747 ----------- .../resource-manager/readme.md | 1 + 3 files changed, 1140 insertions(+), 747 deletions(-) create mode 100644 specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2020-06-01/costmanagement.exports.json diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2020-06-01/costmanagement.exports.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2020-06-01/costmanagement.exports.json new file mode 100644 index 000000000000..6f5153b995a9 --- /dev/null +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2020-06-01/costmanagement.exports.json @@ -0,0 +1,1139 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-06-01", + "title": "CostManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.CostManagement/exports": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_List", + "description": "The operation to list all exports at the given scope.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportsGetBySubscription": { + "$ref": "./examples/ExportsGetBySubscription.json" + }, + "ExportsGetByResourceGroup": { + "$ref": "./examples/ExportsGetByResourceGroup.json" + }, + "ExportsGetByBillingAccount": { + "$ref": "./examples/ExportsGetByBillingAccount.json" + }, + "ExportsGetByDepartment": { + "$ref": "./examples/ExportsGetByDepartment.json" + }, + "ExportsGetByEnrollmentAccount": { + "$ref": "./examples/ExportsGetByEnrollmentAccount.json" + }, + "ExportsGetByManagementGroup": { + "$ref": "./examples/ExportsGetByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within an export. Currently only 'runHistory' is supported and will return information for the last execution of each export.", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Get", + "description": "The operation to get the export for the defined scope by export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportGetBySubscription": { + "$ref": "./examples/ExportGetBySubscription.json" + }, + "ExportGetByResourceGroup": { + "$ref": "./examples/ExportGetByResourceGroup.json" + }, + "ExportGetByBillingAccount": { + "$ref": "./examples/ExportGetByBillingAccount.json" + }, + "ExportGetByDepartment": { + "$ref": "./examples/ExportGetByDepartment.json" + }, + "ExportGetByEnrollmentAccount": { + "$ref": "./examples/ExportGetByEnrollmentAccount.json" + }, + "ExportGetByManagementGroup": { + "$ref": "./examples/ExportGetByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within an export. Currently only 'runHistory' is supported and will return information for the last 10 executions of the export.", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Exports" + ], + "operationId": "Exports_CreateOrUpdate", + "description": "The operation to create or update a export. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportCreateOrUpdateBySubscription": { + "$ref": "./examples/ExportCreateOrUpdateBySubscription.json" + }, + "ExportCreateOrUpdateByResourceGroup": { + "$ref": "./examples/ExportCreateOrUpdateByResourceGroup.json" + }, + "ExportCreateOrUpdateByBillingAccount": { + "$ref": "./examples/ExportCreateOrUpdateByBillingAccount.json" + }, + "ExportCreateOrUpdateByDepartment": { + "$ref": "./examples/ExportCreateOrUpdateByDepartment.json" + }, + "ExportCreateOrUpdateByEnrollmentAccount": { + "$ref": "./examples/ExportCreateOrUpdateByEnrollmentAccount.json" + }, + "ExportCreateOrUpdateByManagementGroup": { + "$ref": "./examples/ExportCreateOrUpdateByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Export" + }, + "description": "Parameters supplied to the CreateOrUpdate Export operation." + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Delete", + "description": "The operation to delete a export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportDeleteBySubscription": { + "$ref": "./examples/ExportDeleteBySubscription.json" + }, + "ExportDeleteByResourceGroup": { + "$ref": "./examples/ExportDeleteByResourceGroup.json" + }, + "ExportDeleteByBillingAccount": { + "$ref": "./examples/ExportDeleteByBillingAccount.json" + }, + "ExportDeleteByEnrollmentAccount": { + "$ref": "./examples/ExportDeleteByEnrollmentAccount.json" + }, + "ExportDeleteByDepartment": { + "$ref": "./examples/ExportDeleteByDepartment.json" + }, + "ExportDeleteByManagementGroup": { + "$ref": "./examples/ExportDeleteByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/run": { + "post": { + "tags": [ + "Exports" + ], + "operationId": "Exports_Execute", + "description": "The operation to execute an export.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportRunBySubscription": { + "$ref": "./examples/ExportRunBySubscription.json" + }, + "ExportRunByResourceGroup": { + "$ref": "./examples/ExportRunByResourceGroup.json" + }, + "ExportRunByBillingAccount": { + "$ref": "./examples/ExportRunByBillingAccount.json" + }, + "ExportRunByDepartment": { + "$ref": "./examples/ExportRunByDepartment.json" + }, + "ExportRunByEnrollmentAccount": { + "$ref": "./examples/ExportRunByEnrollmentAccount.json" + }, + "ExportRunByManagementGroup": { + "$ref": "./examples/ExportRunByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/runHistory": { + "get": { + "tags": [ + "Exports" + ], + "operationId": "Exports_GetExecutionHistory", + "description": "The operation to get the execution history of an export for the defined scope and export name.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" + }, + "x-ms-examples": { + "ExportRunHistoryGetBySubscription": { + "$ref": "./examples/ExportRunHistoryGetBySubscription.json" + }, + "ExportRunHistoryGetByResourceGroup": { + "$ref": "./examples/ExportRunHistoryGetByResourceGroup.json" + }, + "ExportRunHistoryGetByBillingAccount": { + "$ref": "./examples/ExportRunHistoryGetByBillingAccount.json" + }, + "ExportRunHistoryGetByDepartment": { + "$ref": "./examples/ExportRunHistoryGetByDepartment.json" + }, + "ExportRunHistoryGetByEnrollmentAccount": { + "$ref": "./examples/ExportRunHistoryGetByEnrollmentAccount.json" + }, + "ExportRunHistoryGetByManagementGroup": { + "$ref": "./examples/ExportRunHistoryGetByManagementGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/scopeExportParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/exportNameParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ExportExecutionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ReportConfigDefinition": { + "description": "The definition of a report config.", + "properties": { + "type": { + "description": "The type of the report. Usage represents actual usage, forecast represents forecasted data and UsageAndForecast represents both usage and forecasted data. Actual usage and forecasted data can be differentiated based on dates.", + "type": "string", + "enum": [ + "Usage" + ], + "x-ms-enum": { + "name": "ReportType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the report. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "WeekToDate", + "MonthToDate", + "YearToDate", + "Custom" + ], + "x-ms-enum": { + "name": "ReportTimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the report.", + "$ref": "#/definitions/ReportConfigTimePeriod" + }, + "dataset": { + "description": "Has definition for data in this report config.", + "$ref": "#/definitions/ReportConfigDataset" + } + }, + "required": [ + "type", + "timeframe" + ] + }, + "ReportConfigTimePeriod": { + "description": "The start and end date for pulling data for the report.", + "properties": { + "from": { + "description": "The start date to pull data from.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date to pull data to.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from", + "to" + ] + }, + "ReportConfigDataset": { + "description": "The definition of data present in the report.", + "properties": { + "granularity": { + "description": "The granularity of rows in the report.", + "type": "string", + "enum": [ + "Daily", + "Monthly" + ], + "x-ms-enum": { + "name": "ReportGranularityType", + "modelAsString": true + } + }, + "configuration": { + "description": "Has configuration information for the data in the report. The configuration will be ignored if aggregation and grouping are provided.", + "$ref": "#/definitions/ReportConfigDatasetConfiguration" + }, + "aggregation": { + "type": "object", + "description": "Dictionary of aggregation expression to use in the report. The key of each item in the dictionary is the alias for the aggregated column. Report can have up to 2 aggregation clauses.", + "additionalProperties": { + "type": "object", + "$ref": "#/definitions/ReportConfigAggregation" + }, + "maxItems": 2 + }, + "grouping": { + "description": "Array of group by expression to use in the report. Report can have up to 2 group by clauses.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigGrouping" + }, + "maxItems": 2 + }, + "sorting": { + "description": "Array of order by expression to use in the report.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigSorting" + } + }, + "filter": { + "type": "object", + "description": "Has filter expression to use in the report.", + "$ref": "#/definitions/ReportConfigFilter" + } + } + }, + "ReportConfigDatasetConfiguration": { + "description": "The configuration of dataset in the report.", + "properties": { + "columns": { + "description": "Array of column names to be included in the report. Any valid report column name is allowed. If not provided, then report includes all columns.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ReportConfigAggregation": { + "description": "The aggregation expression to be used in the report.", + "properties": { + "name": { + "description": "The name of the column to aggregate.", + "type": "string" + }, + "function": { + "description": "The name of the aggregation function to use.", + "type": "string", + "enum": [ + "Sum" + ], + "x-ms-enum": { + "name": "FunctionType", + "modelAsString": true + } + } + }, + "required": [ + "name", + "function" + ] + }, + "ReportConfigSorting": { + "description": "The order by expression to be used in the report.", + "properties": { + "direction": { + "description": "Direction of sort.", + "type": "string", + "enum": [ + "Ascending", + "Descending" + ] + }, + "name": { + "description": "The name of the column to sort.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "ReportConfigGrouping": { + "description": "The group by expression to be used in the report.", + "properties": { + "type": { + "description": "Has type of the column to group.", + "$ref": "#/definitions/ReportConfigColumnType" + }, + "name": { + "description": "The name of the column to group. This version supports subscription lowest possible grain.", + "type": "string" + } + }, + "required": [ + "type", + "name" + ] + }, + "ReportConfigFilter": { + "description": "The filter expression to be used in the report.", + "properties": { + "and": { + "description": "The logical \"AND\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigFilter" + }, + "minItems": 2 + }, + "or": { + "description": "The logical \"OR\" expression. Must have at least 2 items.", + "type": "array", + "items": { + "$ref": "#/definitions/ReportConfigFilter" + }, + "minItems": 2 + }, + "not": { + "description": "The logical \"NOT\" expression.", + "$ref": "#/definitions/ReportConfigFilter" + }, + "dimension": { + "description": "Has comparison expression for a dimension", + "$ref": "#/definitions/ReportConfigComparisonExpression" + }, + "tag": { + "description": "Has comparison expression for a tag", + "$ref": "#/definitions/ReportConfigComparisonExpression" + } + } + }, + "ReportConfigColumnType": { + "description": "The type of the column in the report.", + "type": "string", + "enum": [ + "Tag", + "Dimension" + ], + "x-ms-enum": { + "name": "ReportConfigColumnType", + "modelAsString": true + } + }, + "ReportConfigComparisonExpression": { + "description": "The comparison expression to be used in the report.", + "properties": { + "name": { + "description": "The name of the column to use in comparison.", + "type": "string" + }, + "operator": { + "description": "The operator to use for comparison.", + "type": "string", + "enum": [ + "In", + "Contains" + ], + "x-ms-enum": { + "name": "OperatorType", + "modelAsString": true + } + }, + "values": { + "description": "Array of values to use for comparison", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + } + }, + "required": [ + "name", + "operator", + "values" + ] + }, + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message. \n\nSome Error responses: \n\n * 429 TooManyRequests - Request is throttled. Retry after waiting for the time specified in the \"x-ms-ratelimit-microsoft.consumption-retry-after\" header. \n\n * 503 ServiceUnavailable - Service is temporarily unavailable. Retry after waiting for the time specified in the \"Retry-After\" header.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "ErrorDetails": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "eTag": { + "type": "string", + "description": "eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not." + } + }, + "x-ms-azure-resource": true + }, + "ExportListResult": { + "description": "Result of listing exports. It contains a list of available exports in the scope provided.", + "type": "object", + "properties": { + "value": { + "description": "The list of exports.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Export" + } + } + } + }, + "Export": { + "description": "An export resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExportProperties", + "title": "Export properties" + } + } + }, + "ExportProperties": { + "description": "The properties of the export.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CommonExportProperties" + } + ], + "properties": { + "schedule": { + "description": "Has schedule information for the export.", + "$ref": "#/definitions/ExportSchedule" + } + } + }, + "CommonExportProperties": { + "description": "The common properties of the export.", + "type": "object", + "properties": { + "format": { + "description": "The format of the export being delivered. Currently only 'Csv' is supported.", + "type": "string", + "enum": [ + "Csv" + ], + "x-ms-enum": { + "name": "FormatType", + "modelAsString": true + } + }, + "deliveryInfo": { + "description": "Has delivery information for the export.", + "$ref": "#/definitions/ExportDeliveryInfo" + }, + "definition": { + "description": "Has the definition for the export.", + "$ref": "#/definitions/ExportDefinition" + }, + "runHistory": { + "description": "If requested, has the most recent execution history for the export.", + "$ref": "#/definitions/ExportExecutionListResult" + }, + "nextRunTimeEstimate": { + "description": "If the export has an active schedule, provides an estimate of the next execution time.", + "type": "string", + "format": "date-time", + "readOnly": true + } + }, + "required": [ + "deliveryInfo", + "definition" + ] + }, + "ExportSchedule": { + "description": "The schedule associated with the export.", + "type": "object", + "properties": { + "status": { + "description": "The status of the export's schedule. If 'Inactive', the export's schedule is paused.", + "type": "string", + "enum": [ + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "StatusType", + "modelAsString": true + } + }, + "recurrence": { + "description": "The schedule recurrence.", + "type": "string", + "enum": [ + "Daily", + "Weekly", + "Monthly", + "Annually" + ], + "x-ms-enum": { + "name": "RecurrenceType", + "modelAsString": true + } + }, + "recurrencePeriod": { + "description": "Has start and end date of the recurrence. The start date must be in future. If present, the end date must be greater than start date.", + "$ref": "#/definitions/ExportRecurrencePeriod" + } + }, + "required": [ + "recurrence" + ] + }, + "ExportDeliveryInfo": { + "description": "The delivery information associated with a export.", + "type": "object", + "properties": { + "destination": { + "description": "Has destination for the export being delivered.", + "$ref": "#/definitions/ExportDeliveryDestination" + } + }, + "required": [ + "destination" + ] + }, + "ExportRecurrencePeriod": { + "description": "The start and end date for recurrence schedule.", + "type": "object", + "properties": { + "from": { + "description": "The start date of recurrence.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date of recurrence.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from" + ] + }, + "ExportDeliveryDestination": { + "description": "The destination information for the delivery of the export. To allow access to a storage account, you must register the account's subscription with the Microsoft.CostManagementExports resource provider. This is required once per subscription. When creating an export in the Azure portal, it is done automatically, however API users need to register the subscription. For more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services .", + "type": "object", + "properties": { + "resourceId": { + "description": "The resource id of the storage account where exports will be delivered.", + "type": "string" + }, + "container": { + "description": "The name of the container where exports will be uploaded.", + "type": "string" + }, + "rootFolderPath": { + "description": "The name of the directory where exports will be uploaded.", + "type": "string" + } + }, + "required": [ + "resourceId", + "container" + ] + }, + "ExportDefinition": { + "description": "The definition of an export.", + "type": "object", + "properties": { + "type": { + "description": "The type of the export. Note that 'Usage' is equivalent to 'ActualCost' and is applicable to exports that do not yet provide data for charges or amortization for service reservations.", + "type": "string", + "enum": [ + "Usage", + "ActualCost", + "AmortizedCost" + ], + "x-ms-enum": { + "name": "ExportType", + "modelAsString": true + } + }, + "timeframe": { + "description": "The time frame for pulling data for the export. If custom, then a specific time period must be provided.", + "type": "string", + "enum": [ + "MonthToDate", + "BillingMonthToDate", + "TheLastMonth", + "TheLastBillingMonth", + "WeekToDate", + "Custom" + ], + "x-ms-enum": { + "name": "TimeframeType", + "modelAsString": true + } + }, + "timePeriod": { + "description": "Has time period for pulling data for the export.", + "$ref": "#/definitions/ExportTimePeriod" + }, + "dataSet": { + "description": "The definition for data in the export.", + "$ref": "#/definitions/ExportDataset" + } + }, + "required": [ + "type", + "timeframe" + ] + }, + "ExportDataset": { + "description": "The definition for data in the export.", + "type": "object", + "properties": { + "granularity": { + "description": "The granularity of rows in the export. Currently only 'Daily' is supported.", + "type": "string", + "enum": [ + "Daily" + ], + "x-ms-enum": { + "name": "GranularityType", + "modelAsString": true + } + }, + "configuration": { + "description": "The export dataset configuration.", + "$ref": "#/definitions/ExportDatasetConfiguration" + } + } + }, + "ExportDatasetConfiguration": { + "description": "The export dataset configuration. Allows columns to be selected for the export. If not provided then the export will include all available columns.", + "type": "object", + "properties": { + "columns": { + "description": "Array of column names to be included in the export. If not provided then the export will include all available columns. The available columns can vary by customer channel (see examples).", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ExportTimePeriod": { + "description": "The date range for data in the export. This should only be specified with timeFrame set to 'Custom'. The maximum date range is 3 months.", + "type": "object", + "properties": { + "from": { + "description": "The start date for export data.", + "type": "string", + "format": "date-time" + }, + "to": { + "description": "The end date for export data.", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "from", + "to" + ] + }, + "ExportExecutionListResult": { + "description": "Result of listing the execution history of an export.", + "type": "object", + "properties": { + "value": { + "description": "A list of export executions.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ExportExecution" + } + } + } + }, + "ExportExecution": { + "description": "An export execution.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExportExecutionProperties", + "title": "Export execution properties" + } + } + }, + "ExportExecutionProperties": { + "description": "The properties of the export execution.", + "type": "object", + "properties": { + "executionType": { + "description": "The type of the export execution.", + "type": "string", + "enum": [ + "OnDemand", + "Scheduled" + ], + "x-ms-enum": { + "name": "ExecutionType", + "modelAsString": true + } + }, + "status": { + "description": "The last known status of the export execution.", + "type": "string", + "enum": [ + "Queued", + "InProgress", + "Completed", + "Failed", + "Timeout", + "NewDataNotAvailable", + "DataNotAvailable" + ], + "x-ms-enum": { + "name": "ExecutionStatus", + "modelAsString": true + } + }, + "submittedBy": { + "description": "The identifier for the entity that executed the export. For OnDemand executions it is the user email. For scheduled executions it is 'System'.", + "type": "string" + }, + "submittedTime": { + "description": "The time when export was queued to be executed.", + "type": "string", + "format": "date-time" + }, + "processingStartTime": { + "description": "The time when export was picked up to be executed.", + "type": "string", + "format": "date-time" + }, + "processingEndTime": { + "description": "The time when the export execution finished.", + "type": "string", + "format": "date-time" + }, + "fileName": { + "description": "The name of the exported file.", + "type": "string" + }, + "runSettings": { + "description": "The export settings that were in effect for this execution.", + "$ref": "#/definitions/CommonExportProperties" + }, + "error": { + "description": "The details of any error.", + "$ref": "#/definitions/ErrorDetails" + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. The current version is 2020-06-01." + }, + "scopeExportParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope associated with export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "exportNameParameter": { + "name": "exportName", + "in": "path", + "description": "Export Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2020-06-01/costmanagement.json b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2020-06-01/costmanagement.json index b08ae42f80d7..1bf76b2ce885 100644 --- a/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2020-06-01/costmanagement.json +++ b/specification/cost-management/resource-manager/Microsoft.CostManagement/stable/2020-06-01/costmanagement.json @@ -1098,364 +1098,6 @@ } } }, - "/{scope}/providers/Microsoft.CostManagement/exports": { - "get": { - "tags": [ - "Exports" - ], - "operationId": "Exports_List", - "description": "The operation to list all exports at the given scope.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" - }, - "x-ms-examples": { - "ExportsGetBySubscription": { - "$ref": "./examples/ExportsGetBySubscription.json" - }, - "ExportsGetByResourceGroup": { - "$ref": "./examples/ExportsGetByResourceGroup.json" - }, - "ExportsGetByBillingAccount": { - "$ref": "./examples/ExportsGetByBillingAccount.json" - }, - "ExportsGetByDepartment": { - "$ref": "./examples/ExportsGetByDepartment.json" - }, - "ExportsGetByEnrollmentAccount": { - "$ref": "./examples/ExportsGetByEnrollmentAccount.json" - }, - "ExportsGetByManagementGroup": { - "$ref": "./examples/ExportsGetByManagementGroup.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeQueryParameter" - }, - { - "$ref": "#/parameters/apiVersion20200601Parameter" - }, - { - "name": "$expand", - "description": "May be used to expand the properties within an export. Currently only 'runHistory' is supported and will return information for the last execution of each export.", - "in": "query", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ExportListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}": { - "get": { - "tags": [ - "Exports" - ], - "operationId": "Exports_Get", - "description": "The operation to get the export for the defined scope by export name.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" - }, - "x-ms-examples": { - "ExportGetBySubscription": { - "$ref": "./examples/ExportGetBySubscription.json" - }, - "ExportGetByResourceGroup": { - "$ref": "./examples/ExportGetByResourceGroup.json" - }, - "ExportGetByBillingAccount": { - "$ref": "./examples/ExportGetByBillingAccount.json" - }, - "ExportGetByDepartment": { - "$ref": "./examples/ExportGetByDepartment.json" - }, - "ExportGetByEnrollmentAccount": { - "$ref": "./examples/ExportGetByEnrollmentAccount.json" - }, - "ExportGetByManagementGroup": { - "$ref": "./examples/ExportGetByManagementGroup.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeQueryParameter" - }, - { - "$ref": "#/parameters/apiVersion20200601Parameter" - }, - { - "$ref": "#/parameters/exportNameParameter" - }, - { - "name": "$expand", - "description": "May be used to expand the properties within an export. Currently only 'runHistory' is supported and will return information for the last 10 executions of the export.", - "in": "query", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Export" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "tags": [ - "Exports" - ], - "operationId": "Exports_CreateOrUpdate", - "description": "The operation to create or update a export. Update operation requires latest eTag to be set in the request. You may obtain the latest eTag by performing a get operation. Create operation does not require eTag.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" - }, - "x-ms-examples": { - "ExportCreateOrUpdateBySubscription": { - "$ref": "./examples/ExportCreateOrUpdateBySubscription.json" - }, - "ExportCreateOrUpdateByResourceGroup": { - "$ref": "./examples/ExportCreateOrUpdateByResourceGroup.json" - }, - "ExportCreateOrUpdateByBillingAccount": { - "$ref": "./examples/ExportCreateOrUpdateByBillingAccount.json" - }, - "ExportCreateOrUpdateByDepartment": { - "$ref": "./examples/ExportCreateOrUpdateByDepartment.json" - }, - "ExportCreateOrUpdateByEnrollmentAccount": { - "$ref": "./examples/ExportCreateOrUpdateByEnrollmentAccount.json" - }, - "ExportCreateOrUpdateByManagementGroup": { - "$ref": "./examples/ExportCreateOrUpdateByManagementGroup.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeQueryParameter" - }, - { - "$ref": "#/parameters/apiVersion20200601Parameter" - }, - { - "$ref": "#/parameters/exportNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Export" - }, - "description": "Parameters supplied to the CreateOrUpdate Export operation." - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/Export" - } - }, - "201": { - "description": "Created.", - "schema": { - "$ref": "#/definitions/Export" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "delete": { - "tags": [ - "Exports" - ], - "operationId": "Exports_Delete", - "description": "The operation to delete a export.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" - }, - "x-ms-examples": { - "ExportDeleteBySubscription": { - "$ref": "./examples/ExportDeleteBySubscription.json" - }, - "ExportDeleteByResourceGroup": { - "$ref": "./examples/ExportDeleteByResourceGroup.json" - }, - "ExportDeleteByBillingAccount": { - "$ref": "./examples/ExportDeleteByBillingAccount.json" - }, - "ExportDeleteByEnrollmentAccount": { - "$ref": "./examples/ExportDeleteByEnrollmentAccount.json" - }, - "ExportDeleteByDepartment": { - "$ref": "./examples/ExportDeleteByDepartment.json" - }, - "ExportDeleteByManagementGroup": { - "$ref": "./examples/ExportDeleteByManagementGroup.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeQueryParameter" - }, - { - "$ref": "#/parameters/apiVersion20200601Parameter" - }, - { - "$ref": "#/parameters/exportNameParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/run": { - "post": { - "tags": [ - "Exports" - ], - "operationId": "Exports_Execute", - "description": "The operation to execute an export.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" - }, - "x-ms-examples": { - "ExportRunBySubscription": { - "$ref": "./examples/ExportRunBySubscription.json" - }, - "ExportRunByResourceGroup": { - "$ref": "./examples/ExportRunByResourceGroup.json" - }, - "ExportRunByBillingAccount": { - "$ref": "./examples/ExportRunByBillingAccount.json" - }, - "ExportRunByDepartment": { - "$ref": "./examples/ExportRunByDepartment.json" - }, - "ExportRunByEnrollmentAccount": { - "$ref": "./examples/ExportRunByEnrollmentAccount.json" - }, - "ExportRunByManagementGroup": { - "$ref": "./examples/ExportRunByManagementGroup.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeQueryParameter" - }, - { - "$ref": "#/parameters/apiVersion20200601Parameter" - }, - { - "$ref": "#/parameters/exportNameParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, - "/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/runHistory": { - "get": { - "tags": [ - "Exports" - ], - "operationId": "Exports_GetExecutionHistory", - "description": "The operation to get the execution history of an export for the defined scope and export name.", - "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/costmanagement/" - }, - "x-ms-examples": { - "ExportRunHistoryGetBySubscription": { - "$ref": "./examples/ExportRunHistoryGetBySubscription.json" - }, - "ExportRunHistoryGetByResourceGroup": { - "$ref": "./examples/ExportRunHistoryGetByResourceGroup.json" - }, - "ExportRunHistoryGetByBillingAccount": { - "$ref": "./examples/ExportRunHistoryGetByBillingAccount.json" - }, - "ExportRunHistoryGetByDepartment": { - "$ref": "./examples/ExportRunHistoryGetByDepartment.json" - }, - "ExportRunHistoryGetByEnrollmentAccount": { - "$ref": "./examples/ExportRunHistoryGetByEnrollmentAccount.json" - }, - "ExportRunHistoryGetByManagementGroup": { - "$ref": "./examples/ExportRunHistoryGetByManagementGroup.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/scopeQueryParameter" - }, - { - "$ref": "#/parameters/apiVersion20200601Parameter" - }, - { - "$ref": "#/parameters/exportNameParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/ExportExecutionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } - }, "/providers/Microsoft.CostManagement/operations": { "get": { "tags": [ @@ -2789,391 +2431,10 @@ "operator", "values" ] - }, - "ExportListResult": { - "description": "Result of listing exports. It contains a list of available exports in the scope provided.", - "type": "object", - "properties": { - "value": { - "description": "The list of exports.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Export" - } - } - } - }, - "Export": { - "description": "An export resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ExportProperties", - "title": "Export properties" - } - } - }, - "ExportProperties": { - "description": "The properties of the export.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/CommonExportProperties" - } - ], - "properties": { - "schedule": { - "description": "Has schedule information for the export.", - "$ref": "#/definitions/ExportSchedule" - } - } - }, - "CommonExportProperties": { - "description": "The common properties of the export.", - "type": "object", - "properties": { - "format": { - "description": "The format of the export being delivered. Currently only 'Csv' is supported.", - "type": "string", - "enum": [ - "Csv" - ], - "x-ms-enum": { - "name": "FormatType", - "modelAsString": true - } - }, - "deliveryInfo": { - "description": "Has delivery information for the export.", - "$ref": "#/definitions/ExportDeliveryInfo" - }, - "definition": { - "description": "Has the definition for the export.", - "$ref": "#/definitions/ExportDefinition" - }, - "runHistory": { - "description": "If requested, has the most recent execution history for the export.", - "$ref": "#/definitions/ExportExecutionListResult" - }, - "nextRunTimeEstimate": { - "description": "If the export has an active schedule, provides an estimate of the next execution time.", - "type": "string", - "format": "date-time", - "readOnly": true - } - }, - "required": [ - "deliveryInfo", - "definition" - ] - }, - "ExportSchedule": { - "description": "The schedule associated with the export.", - "type": "object", - "properties": { - "status": { - "description": "The status of the export's schedule. If 'Inactive', the export's schedule is paused.", - "type": "string", - "enum": [ - "Active", - "Inactive" - ], - "x-ms-enum": { - "name": "StatusType", - "modelAsString": true - } - }, - "recurrence": { - "description": "The schedule recurrence.", - "type": "string", - "enum": [ - "Daily", - "Weekly", - "Monthly", - "Annually" - ], - "x-ms-enum": { - "name": "RecurrenceType", - "modelAsString": true - } - }, - "recurrencePeriod": { - "description": "Has start and end date of the recurrence. The start date must be in future. If present, the end date must be greater than start date.", - "$ref": "#/definitions/ExportRecurrencePeriod" - } - }, - "required": [ - "recurrence" - ] - }, - "ExportDeliveryInfo": { - "description": "The delivery information associated with a export.", - "type": "object", - "properties": { - "destination": { - "description": "Has destination for the export being delivered.", - "$ref": "#/definitions/ExportDeliveryDestination" - } - }, - "required": [ - "destination" - ] - }, - "ExportRecurrencePeriod": { - "description": "The start and end date for recurrence schedule.", - "type": "object", - "properties": { - "from": { - "description": "The start date of recurrence.", - "type": "string", - "format": "date-time" - }, - "to": { - "description": "The end date of recurrence.", - "type": "string", - "format": "date-time" - } - }, - "required": [ - "from" - ] - }, - "ExportDeliveryDestination": { - "description": "The destination information for the delivery of the export. To allow access to a storage account, you must register the account's subscription with the Microsoft.CostManagementExports resource provider. This is required once per subscription. When creating an export in the Azure portal, it is done automatically, however API users need to register the subscription. For more information see https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-supported-services .", - "type": "object", - "properties": { - "resourceId": { - "description": "The resource id of the storage account where exports will be delivered.", - "type": "string" - }, - "container": { - "description": "The name of the container where exports will be uploaded.", - "type": "string" - }, - "rootFolderPath": { - "description": "The name of the directory where exports will be uploaded.", - "type": "string" - } - }, - "required": [ - "resourceId", - "container" - ] - }, - "ExportDefinition": { - "description": "The definition of an export.", - "type": "object", - "properties": { - "type": { - "description": "The type of the export. Note that 'Usage' is equivalent to 'ActualCost' and is applicable to exports that do not yet provide data for charges or amortization for service reservations.", - "type": "string", - "enum": [ - "Usage", - "ActualCost", - "AmortizedCost" - ], - "x-ms-enum": { - "name": "ExportType", - "modelAsString": true - } - }, - "timeframe": { - "description": "The time frame for pulling data for the export. If custom, then a specific time period must be provided.", - "type": "string", - "enum": [ - "MonthToDate", - "BillingMonthToDate", - "TheLastMonth", - "TheLastBillingMonth", - "WeekToDate", - "Custom" - ], - "x-ms-enum": { - "name": "TimeframeType", - "modelAsString": true - } - }, - "timePeriod": { - "description": "Has time period for pulling data for the export.", - "$ref": "#/definitions/ExportTimePeriod" - }, - "dataSet": { - "description": "The definition for data in the export.", - "$ref": "#/definitions/ExportDataset" - } - }, - "required": [ - "type", - "timeframe" - ] - }, - "ExportDataset": { - "description": "The definition for data in the export.", - "type": "object", - "properties": { - "granularity": { - "description": "The granularity of rows in the export. Currently only 'Daily' is supported.", - "type": "string", - "enum": [ - "Daily" - ], - "x-ms-enum": { - "name": "GranularityType", - "modelAsString": true - } - }, - "configuration": { - "description": "The export dataset configuration.", - "$ref": "#/definitions/ExportDatasetConfiguration" - } - } - }, - "ExportDatasetConfiguration": { - "description": "The export dataset configuration. Allows columns to be selected for the export. If not provided then the export will include all available columns.", - "type": "object", - "properties": { - "columns": { - "description": "Array of column names to be included in the export. If not provided then the export will include all available columns. The available columns can vary by customer channel (see examples).", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "ExportTimePeriod": { - "description": "The date range for data in the export. This should only be specified with timeFrame set to 'Custom'. The maximum date range is 3 months.", - "type": "object", - "properties": { - "from": { - "description": "The start date for export data.", - "type": "string", - "format": "date-time" - }, - "to": { - "description": "The end date for export data.", - "type": "string", - "format": "date-time" - } - }, - "required": [ - "from", - "to" - ] - }, - "ExportExecutionListResult": { - "description": "Result of listing the execution history of an export.", - "type": "object", - "properties": { - "value": { - "description": "A list of export executions.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ExportExecution" - } - } - } - }, - "ExportExecution": { - "description": "An export execution.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ExportExecutionProperties", - "title": "Export execution properties" - } - } - }, - "ExportExecutionProperties": { - "description": "The properties of the export execution.", - "type": "object", - "properties": { - "executionType": { - "description": "The type of the export execution.", - "type": "string", - "enum": [ - "OnDemand", - "Scheduled" - ], - "x-ms-enum": { - "name": "ExecutionType", - "modelAsString": true - } - }, - "status": { - "description": "The last known status of the export execution.", - "type": "string", - "enum": [ - "Queued", - "InProgress", - "Completed", - "Failed", - "Timeout", - "NewDataNotAvailable", - "DataNotAvailable" - ], - "x-ms-enum": { - "name": "ExecutionStatus", - "modelAsString": true - } - }, - "submittedBy": { - "description": "The identifier for the entity that executed the export. For OnDemand executions it is the user email. For scheduled executions it is 'System'.", - "type": "string" - }, - "submittedTime": { - "description": "The time when export was queued to be executed.", - "type": "string", - "format": "date-time" - }, - "processingStartTime": { - "description": "The time when export was picked up to be executed.", - "type": "string", - "format": "date-time" - }, - "processingEndTime": { - "description": "The time when the export execution finished.", - "type": "string", - "format": "date-time" - }, - "fileName": { - "description": "The name of the exported file.", - "type": "string" - }, - "runSettings": { - "description": "The export settings that were in effect for this execution.", - "$ref": "#/definitions/CommonExportProperties" - }, - "error": { - "description": "The details of any error.", - "$ref": "#/definitions/ErrorDetails" - } - } } }, "parameters": { "apiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Version of the API to be used with the client request. The current version is 2019-11-01." - }, - "apiVersion20200601Parameter": { "name": "api-version", "in": "query", "required": true, @@ -3279,14 +2540,6 @@ "type": "string", "x-ms-parameter-location": "method" }, - "exportNameParameter": { - "name": "exportName", - "in": "path", - "description": "Export Name.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, "externalCloudProviderTypeParameter": { "name": "externalCloudProviderType", "in": "path", diff --git a/specification/cost-management/resource-manager/readme.md b/specification/cost-management/resource-manager/readme.md index 66b5c5f7d127..505a99a338c0 100644 --- a/specification/cost-management/resource-manager/readme.md +++ b/specification/cost-management/resource-manager/readme.md @@ -50,6 +50,7 @@ These settings apply only when `--tag=package-2020-06` is specified on the comma ```yaml $(tag) == 'package-2020-06' input-file: - Microsoft.CostManagement/stable/2020-06-01/costmanagement.json + - Microsoft.CostManagement/stable/2020-06-01/costmanagement.exports.json ``` From 9ef0d2334aa069e06ce1cca5d5e40324763ba54b Mon Sep 17 00:00:00 2001 From: Eunice Lee Date: Mon, 21 Sep 2020 12:03:16 -0700 Subject: [PATCH 13/37] Migrate existing Azure Maps data plane docs (v1.0) (#10113) * initial-1.0 * Documentation updates * remove tags * Remove CSharp settings * Remove WFS Get Version Info * Weather and route fixes Co-authored-by: Eunice Lee --- cSpell.json | 8 + custom-words.txt | 67 + .../Alias/preview/1.0/alias.json | 416 ++ .../preview/1.0/examples/Alias_Assign.json | 58 + .../preview/1.0/examples/Alias_Create.json | 59 + .../preview/1.0/examples/Alias_Delete.json | 57 + .../preview/1.0/examples/Alias_List.json | 71 + .../Microsoft.Maps/Data/preview/1.0/data.json | 618 +++ .../Data/preview/1.0/examples/Delete.json | 57 + .../Data/preview/1.0/examples/Download.json | 76 + .../Data/preview/1.0/examples/List.json | 77 + .../Data/preview/1.0/examples/Update.json | 100 + .../Data/preview/1.0/examples/Upload.json | 100 + .../Dataset/preview/1.0/dataset.json | 608 +++ .../preview/1.0/examples/Dataset_Create.json | 73 + .../preview/1.0/examples/Dataset_Delete.json | 57 + .../preview/1.0/examples/Dataset_Import.json | 71 + .../preview/1.0/examples/Dataset_List.json | 116 + .../preview/1.0/dwgconversion.json | 474 +++ .../preview/1.0/examples/Conversion.json | 73 + .../preview/1.0/examples/Delete.json | 57 + .../preview/1.0/examples/List.json | 89 + .../preview/1.0/examples/CreateStateset.json | 105 + .../1.0/examples/DeleteFeatureState.json | 66 + .../preview/1.0/examples/DeleteStateset.json | 55 + .../preview/1.0/examples/GetStates.json | 66 + .../preview/1.0/examples/GetStateset.json | 117 + .../preview/1.0/examples/Stateset_List.json | 121 + .../preview/1.0/examples/UpdateStates.json | 65 + .../preview/1.0/examples/UpdateStateset.json | 101 + .../preview/1.0/featurestate.json | 804 ++++ .../Feedback/preview/1.0/feedback.json | 685 ++++ .../1.0/examples/GetLocationByIpAddress.json | 64 + .../Geolocation/preview/1.0/geolocation.json | 249 ++ .../preview/1.0/examples/GetMetroArea.json | 110 + .../1.0/examples/GetMetroAreaInfo.json | 359 ++ .../1.0/examples/GetNearbyTransit.json | 136 + .../1.0/examples/GetRealTimeArrivals.json | 141 + .../1.0/examples/GetTransitItinerary.json | 203 + .../1.0/examples/GetTransitLineInfo.json | 599 +++ .../preview/1.0/examples/GetTransitRoute.json | 230 ++ .../1.0/examples/GetTransitStopInfo.json | 166 + .../Mobility/preview/1.0/mobility.json | 2483 +++++++++++ .../1.0/examples/GetCopyrightCaption.json | 60 + .../1.0/examples/GetCopyrightForTile.json | 125 + .../1.0/examples/GetCopyrightForWorld.json | 384 ++ .../examples/GetCopyrightFromBoundingBox.json | 79 + .../preview/1.0/examples/GetMapImage.json | 62 + .../1.0/examples/GetMapImageryTile.json | 52 + .../preview/1.0/examples/GetMapStateTile.json | 63 + .../preview/1.0/examples/GetMapTile.json | 64 + .../Render/preview/1.0/render.json | 1177 ++++++ .../1.0/examples/GetRouteDirections.json | 156 + .../preview/1.0/examples/GetRouteRange.json | 269 ++ .../examples/PostMatrixRouteCalculate.json | 152 + .../1.0/examples/PostRouteDirections.json | 234 ++ .../examples/PostRouteDirectionsBatch.json | 212 + .../Route/preview/1.0/route.json | 2845 +++++++++++++ .../1.0/examples/GetPOICategoryTree.json | 252 ++ .../1.0/examples/GetSearchAddress.json | 114 + .../1.0/examples/GetSearchAddressReverse.json | 85 + .../GetSearchAddressReverseCrossStreet.json | 84 + .../examples/GetSearchAddressStructured.json | 124 + .../preview/1.0/examples/GetSearchFuzzy.json | 703 ++++ .../preview/1.0/examples/GetSearchNearby.json | 763 ++++ .../preview/1.0/examples/GetSearchPOI.json | 457 +++ .../1.0/examples/GetSearchPOICategory.json | 275 ++ .../1.0/examples/GetSearchPolygon.json | 125 + .../1.0/examples/PostSearchAddressBatch.json | 351 ++ .../PostSearchAddressReverseBatch.json | 190 + .../1.0/examples/PostSearchAlongRoute.json | 249 ++ .../1.0/examples/PostSearchFuzzyBatch.json | 1454 +++++++ .../PostSearchInsideFeatureCollection.json | 261 ++ .../examples/PostSearchInsideGeometry.json | 247 ++ .../PostSearchInsideGeometryCollection.json | 275 ++ .../Search/preview/1.0/search.json | 3580 ++++++++++++++++ .../preview/1.0/examples/GetBuffer.json | 219 + .../preview/1.0/examples/GetClosestPoint.json | 83 + .../preview/1.0/examples/GetGeofence.json | 95 + .../1.0/examples/GetGreatCircleDistance.json | 76 + .../1.0/examples/GetPointInPolygon.json | 79 + .../preview/1.0/examples/PostBuffer.json | 240 ++ .../1.0/examples/PostClosestPoint.json | 126 + .../preview/1.0/examples/PostGeofence.json | 183 + .../1.0/examples/PostPointInPolygon.json | 112 + .../Spatial/preview/1.0/spatial.json | 1604 ++++++++ .../Tileset/preview/1.0/examples/Create.json | 72 + .../Tileset/preview/1.0/examples/Delete.json | 57 + .../Tileset/preview/1.0/examples/List.json | 85 + .../Tileset/preview/1.0/tileset.json | 479 +++ .../examples/GetTimezoneByCoordinates.json | 120 + .../preview/1.0/examples/GetTimezoneByID.json | 107 + .../1.0/examples/GetTimezoneEnumIANA.json | 3231 +++++++++++++++ .../1.0/examples/GetTimezoneEnumWindows.json | 3649 +++++++++++++++++ .../1.0/examples/GetTimezoneIANAVersion.json | 59 + .../examples/GetTimezoneWindowsToIANA.json | 64 + .../Timezone/preview/1.0/timezone.json | 1009 +++++ .../1.0/examples/GetTrafficFlowSegment.json | 83 + .../1.0/examples/GetTrafficFlowTile.json | 61 + .../examples/GetTrafficIncidentDetail.json | 383 ++ .../1.0/examples/GetTrafficIncidentTile.json | 61 + .../examples/GetTrafficIncidentViewport.json | 72 + .../Traffic/preview/1.0/traffic.json | 1154 ++++++ .../WFS/preview/1.0/examples/DeleteItem.json | 57 + .../preview/1.0/examples/GetCollection.json | 78 + .../1.0/examples/GetCollectionDefinition.json | 196 + .../preview/1.0/examples/GetCollections.json | 297 ++ .../preview/1.0/examples/GetConformance.json | 64 + .../WFS/preview/1.0/examples/GetItem.json | 128 + .../WFS/preview/1.0/examples/GetItems.json | 137 + .../preview/1.0/examples/GetLandingPage.json | 85 + .../Microsoft.Maps/WFS/preview/1.0/wfs.json | 984 +++++ .../1.0/examples/GetCurrentConditions.json | 224 + .../1.0/examples/GetDailyForecast.json | 284 ++ .../preview/1.0/examples/GetDailyIndices.json | 251 ++ .../1.0/examples/GetHourlyForecast.json | 1057 +++++ .../1.0/examples/GetMinuteForecast.json | 180 + .../1.0/examples/GetQuarterDayForecast.json | 423 ++ .../1.0/examples/GetSevereWeatherAlerts.json | 112 + .../1.0/examples/GetWeatherAlongRoute.json | 353 ++ .../Weather/preview/1.0/weather.json | 2397 +++++++++++ specification/maps/data-plane/readme.md | 63 + 122 files changed, 46763 insertions(+) create mode 100644 specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/alias.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Assign.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Create.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Delete.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_List.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/data.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Delete.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Download.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/List.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Update.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Upload.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/dataset.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Create.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Delete.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Import.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_List.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/dwgconversion.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Conversion.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Delete.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/List.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/CreateStateset.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteFeatureState.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteStateset.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStates.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStateset.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/Stateset_List.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStates.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStateset.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/featurestate.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Feedback/preview/1.0/feedback.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/examples/GetLocationByIpAddress.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/geolocation.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetMetroArea.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetMetroAreaInfo.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetNearbyTransit.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetRealTimeArrivals.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitItinerary.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitLineInfo.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitRoute.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitStopInfo.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/mobility.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightCaption.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightForTile.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightForWorld.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightFromBoundingBox.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapImage.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapImageryTile.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapStateTile.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapTile.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/render.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/GetRouteDirections.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/GetRouteRange.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostMatrixRouteCalculate.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostRouteDirections.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostRouteDirectionsBatch.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/route.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetPOICategoryTree.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddress.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressReverse.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressReverseCrossStreet.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressStructured.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchFuzzy.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchNearby.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPOI.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPOICategory.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPolygon.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAddressBatch.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAddressReverseBatch.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAlongRoute.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchFuzzyBatch.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideFeatureCollection.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideGeometry.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideGeometryCollection.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/search.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetBuffer.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetClosestPoint.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetGeofence.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetGreatCircleDistance.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetPointInPolygon.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostBuffer.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostClosestPoint.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostGeofence.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostPointInPolygon.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/spatial.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Create.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Delete.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/List.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/tileset.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneByCoordinates.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneByID.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneEnumIANA.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneEnumWindows.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneIANAVersion.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneWindowsToIANA.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/timezone.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficFlowSegment.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficFlowTile.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentDetail.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentTile.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentViewport.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/traffic.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/DeleteItem.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollection.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollectionDefinition.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollections.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetConformance.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItem.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItems.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetLandingPage.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/wfs.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetCurrentConditions.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetDailyForecast.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetDailyIndices.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetHourlyForecast.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetMinuteForecast.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetQuarterDayForecast.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetSevereWeatherAlerts.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetWeatherAlongRoute.json create mode 100644 specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/weather.json create mode 100644 specification/maps/data-plane/readme.md diff --git a/cSpell.json b/cSpell.json index 88648ed85612..794394747940 100644 --- a/cSpell.json +++ b/cSpell.json @@ -720,6 +720,14 @@ "mysqldb", "psqldb" ] + }, + { + "filename": "**/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/render.json", + "words": [ + "Chttp", + "Fcontoso", + "Fpushpins" + ] } ] } diff --git a/custom-words.txt b/custom-words.txt index c064b70c886f..602c49385a73 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -58,6 +58,7 @@ AND'ed Annotatable anomalydetector anomalyfinder +antimeridian APAC APACHEAVRO API's @@ -199,6 +200,7 @@ baremetalinfrastructure BATCHAI batchmanaged BAYESIANOPTIMIZATION +bbox BCDR BCWG beider @@ -243,6 +245,8 @@ Bokmaal Bootstrappers bot's botservice +boundingbox +boundingzoom brazilsouth browsable bruceper @@ -276,6 +280,7 @@ certificatescreateorupdate certificatesdelete Certificatethumbprint certverify +Chademo chainer changepoint changestate @@ -364,6 +369,7 @@ Cran creatable createconsumergroup createorupdate +createpreview credativ crossdomain csname @@ -390,6 +396,7 @@ CUTOVER CVEs CVSS Cyrl +darkgrey databox Databricks datacatalog @@ -409,6 +416,7 @@ Datamasking datamigration datapoint Dataset +datasetid datasets dataschema datasource @@ -468,6 +476,7 @@ devicetemplates devspaces devtestlab devtestlabs +dewpoint dhcp diagnosticcontext digitaltwins @@ -509,6 +518,7 @@ Edgenode edgenodes EDIFACT EDMX +Einsteinweg Ekaterinburg ekus Eloqua @@ -530,6 +540,7 @@ entitydocument entitysearch entrypoint environmentsettings +EPSG errordetail errored ErrorMesssage @@ -601,6 +612,7 @@ FPGA fqdn FQDNs Français +freeflow frontdoor fsaction Fulfilment @@ -620,10 +632,16 @@ generatelivetoken generateverificationcode generatevpnclientpackage generatevpnprofile +geobias +geocode +geocodes Geofence +geofences Geofencing +geojson georegions georeplication +geospatial GETACLSTATUS getactivationkey getavailablebillingfeatures @@ -632,8 +650,10 @@ getconsumergroup GETCONTENTSUMMARY GETFILESTATUS getissuers +getitems getjob getkey +getmaptile getprivateendpointconnection getprivatelinkresources getsas @@ -661,10 +681,12 @@ Groupby groupedby GRPC GSMT +GTFS guestconfiguration GUID GUIDs GZRS +Haag haase Había hadoop @@ -695,6 +717,7 @@ Horovod hostnames Hotfix hotfixes +HSLA HSMs Hubspot hybridconnection @@ -766,6 +789,7 @@ isdirectory ishostingenvironmentnameavailable ishostnameavailable isnullable +isochrone isordered issqlcompression istransitioning @@ -806,6 +830,7 @@ keyvaulturi keyversion KHTML Kiswahili +KMPH Knowledgebase knowledgebases koelner @@ -844,6 +869,7 @@ libtrust lifecycle lifetimejobstats lifetimepoolstats +Linestring linkedservices linkexpiryinminutes LISTAFTERID @@ -910,12 +936,14 @@ managementgroups managementpartner managementpolicy manualupgrade +mapbox mapred mapreduce mariadb Marketo marketplaceagreementsapi marketplaceordering +maxcoordinates MAXERRORS maximumblobsize maxmemory @@ -944,9 +972,11 @@ microservices microsofttranslator migratemysql migratetoaad +mincoordinates minidump minimalmetadata ministamps +Minkowski mixedreality Mkdirs mktorest @@ -958,6 +988,7 @@ MODIFYACLENTRIES monitoringconfiguration monitoringconfigurations Monospace +mountainview MPNS MRAN MSAZR @@ -973,6 +1004,8 @@ Multiclass MULTIJSON Multilabel multipart +multipoint +multipoints Multiset multistep multivalued @@ -1005,10 +1038,12 @@ n'recognition nagios namespace's nanoserver +Napoli nbformat Nccl nchar ndjson +Neighbourhood netapp netezza networkruleset @@ -1049,6 +1084,7 @@ notificationchannels notificationhubs notstarted nouploadcache +nowcasts nsdname nsku nsxt @@ -1087,6 +1123,7 @@ operationresults operationsmanagement operationstatuses opid +openlr oplog Optimised Optimiser @@ -1104,6 +1141,8 @@ overprovisioned overprovisioning overridable overriden +overviewbox +overviewzoom OWASP oxxm pageable @@ -1144,6 +1183,7 @@ pkcs playready Plex Pohlmann +pois policyassignments policydefinitions policyinsights @@ -1319,6 +1359,7 @@ Responsys RESTAPI restoreheartbeat Restproxy +restrant restype resumable resync @@ -1352,6 +1393,7 @@ RPKI rpns RSAES RSASSA +rstrnt rscc rscd rsce @@ -1382,6 +1424,7 @@ sawinvm SBEH Scaleset scalesets +Scame scanability SCMS SCOM @@ -1389,6 +1432,7 @@ scopemap SCSV sdks SDWAN +searchbuffer searchindex searchmanagementclient searchservice @@ -1504,6 +1548,9 @@ starttaskfailed starttime startTime stateful +stateset +statesets +statetile staticsite statusdir stderror @@ -1526,6 +1573,7 @@ streamanalytics streamingendpoint streamingjobs streamingservice +subcause subcomponent subdir subdomain @@ -1593,6 +1641,7 @@ templatelink templeton temporarydisk tensorflow +TEPCO's teradata terminatejob Termlist @@ -1607,6 +1656,8 @@ textanalytics TFIDF Tful Tfvc +tileset +tilesets timeframe timegrain timeseries @@ -1622,11 +1673,13 @@ toolset tooltips topqueries topquery +TPEG traceback traceroute trafficmanager trafficmanageranalytics trafficmanagerprofiles +trafficmodelid tráfico transcoding transcodes @@ -1638,8 +1691,11 @@ triggerruns TSVE Turbonomic Txns +typeahead Typeless typeperf +udid +udids UEFI UEBA Uint @@ -1658,6 +1714,7 @@ unexamined Unigrams uniqueidentifier uniquestring +unitless unixtime UNKNOWON unlocalized @@ -1714,8 +1771,11 @@ userid userpreference usersetting usermanaged +usertime USQL +uturn UUCP +UUIDs VAIDK varbinary varchar @@ -1732,6 +1792,7 @@ Vfyc vhds VHDX videosearch +viewp virtualclusters virtualip virtualmachine @@ -1781,6 +1842,8 @@ waitingforstarttask WANAs WANs WASB +waypoint +waypoints WDATP WEBAPICONTAINER webapplicationfirewall @@ -1811,6 +1874,7 @@ Whitelistings whitespaces Whois Widevine +windingness windowsazuremediaservices windowsesu wlmengg @@ -1828,7 +1892,9 @@ XBing Xeon Xero XSMB +Xstr XVCJ +Yazaki Yucatec Ywhk YYMMDD @@ -1837,6 +1903,7 @@ Zerto Zilla ziplist Zoho +zoneinfo zset MSAZRUSGO hypervcollectors diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/alias.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/alias.json new file mode 100644 index 000000000000..13630019c12b --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/alias.json @@ -0,0 +1,416 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Alias Service", + "version": "1.0", + "description": "APIs for managing aliases in Azure Maps." + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "202": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + }, + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "CreateResourceId": { + "name": "resourceId", + "description": "The unique id that references a resource to be aliased.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "AssignResourceId": { + "name": "resourceId", + "description": "The unique id that references a resource to be aliased.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "AliasId": { + "name": "aliasId", + "description": "The unique id that references an existing alias.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/alias": { + "post": { + "x-publish": true, + "description": "**Alias - Create API**\n\n**Applies to:** S1 pricing tier.\n
\n\nThis API allows the caller to create an alias.
\nYou can also assign the alias during the create request as well.\n\n\n### Submit Create Request\n\nTo create your alias, you will use a `POST` request. If you would like to assign the alias during the creation, you will pass the `resourceId` query parameter.
\n\n\n### Create Alias Response\n\nThe Create API returns a HTTP `201 Created` response the id of the alias, `aliasId`, in the body.\nThe response will look something like:\n\n```json\n{\n \"aliasId\" : \"d7e5efc8-2239-4387-a286-5bb51aa804e3\"\n}\n```\n\n
", + "operationId": "Alias_CreatePreview", + "x-ms-examples": { + "Create an alias that does not reference any resource": { + "$ref": "./examples/Alias_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "201": { + "description": "Content created successfully. The response body contains the newly created alias id `aliasId`.", + "schema": { + "$ref": "#/definitions/AliasCreateResponse" + }, + "headers": { + "Access-Control-Expose-Headers": { + "type": "string", + "description": "The list of response headers that can be read by the client." + } + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Alias - List API**\n\n**Applies to:** S1 pricing tier.\n
\n\nThis API allows the caller to fetch a list of all previously successfully created aliases.\n\n\n### Submit List Request\n\nTo list all your aliases, you will issue a `GET` request with no additional parameters.
\n\n\n### List Data Response\n\nThe List API returns the complete list of all aliases in `json` format. The response contains the following details for each alias resource:\n\n > createdTimestamp - The timestamp that the alias was created.\n > aliasId - The id for the alias.\n > resourceId - The id for the resource that this alias references (could be null if the alias has not been assigned).\n > lastUpdatedTimestamp - The last time the alias was assigned to a resource.\n\n\nHere's a sample response returning 2 alias resources: \n\n
\n\n```json\n{\n \"aliases\": [\n {\n \"createdTimestamp\": \"2020-02-13T21:19:11+00:00\",\n \"aliasId\": \"a8a4b8bb-ecf4-fb27-a618-f41721552766\",\n \"resourceId\": \"e89aebb9-70a3-8fe1-32bb-1fbd0c725f14\",\n \"lastUpdatedTimestamp\": \"2020-02-13T21:19:22+00:00\"\n },\n {\n \"createdTimestamp\": \"2020-02-18T19:53:33+00:00\",\n \"aliasId\": \"1856dbfc-7a66-ee5a-bf8d-51dbfe1906f6\",\n \"resourceId\": null,\n \"lastUpdatedTimestamp\": \"2020-02-18T19:53:33+00:00\"\n }\n ]\n}\n```\n\n
", + "operationId": "Alias_ListPreview", + "x-ms-examples": { + "List all the previously created aliases": { + "$ref": "./examples/Alias_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "List alias request completed successfully. The response body contains a list of all the previously created aliases.", + "schema": { + "$ref": "#/definitions/AliasListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/alias/assign/{aliasId}": { + "patch": { + "x-publish": true, + "description": "**Alias - Assign API**\n\n**Applies to:** S1 pricing tier.\n
\n\nThis API allows the caller to assign an alias to reference a resource.
\n\n\n### Submit Assign Request\n\nTo assign your alias to a resource, you will use a `PATCH` request with the `aliasId` in the path and the `resourceId` passed as a query parameter.
\n\n\n### Create Alias Response\n\nThe Assign API returns a HTTP `204 No Content` response with an empty body, if the alias was assigned successfully.
", + "operationId": "Alias_AssignPreview", + "x-ms-examples": { + "Assign an alias to a resource": { + "$ref": "./examples/Alias_Assign.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AliasId" + }, + { + "$ref": "#/parameters/AssignResourceId" + } + ], + "responses": { + "204": { + "description": "Alias was assigned successfully.", + "schema": { + "$ref": "#/definitions/AliasAssignResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/alias/{aliasId}": { + "delete": { + "x-publish": true, + "description": "**Alias - Delete API**\n\n**Applies to:** S1 pricing tier.\n
\n\nThis API allows the caller to delete a previously created alias.
\nYou can also use this API to delete old/unused aliases to create space for new content.\nThis API does not delete the references resource, only the alias referencing the resource.\n\n\n### Submit Delete Request\n\nTo delete your alias you will issue a `DELETE` request where the path will contain the `aliasId` of the alias to delete.
\n\n\n### Delete Alias Response\n\nThe Delete API returns a HTTP `204 No Content` response with an empty body, if the alias was deleted successfully.
\nA HTTP `400 Bad Request` error response will be returned if the alias with the passed-in `aliasId` is not found. ", + "operationId": "Alias_DeletePreview", + "x-ms-examples": { + "Delete previously created alias": { + "$ref": "./examples/Alias_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AliasId" + } + ], + "responses": { + "204": { + "description": "Alias delete request completed successfully. The content for `aliasId` was deleted on the server.", + "schema": { + "$ref": "#/definitions/AliasDeleteResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "AliasCreateResponse": { + "description": "The response model for the Alias Create API for the case when the alias was successfully created.", + "type": "object", + "properties": { + "aliasId": { + "description": "An alias id `aliasId` for the created alias.", + "type": "string", + "readOnly": true + } + } + }, + "AliasAssignResponse": { + "description": "The response model for the Assign API. The response body will be empty signifying the assign was successful.", + "type": "object" + }, + "AliasDeleteResponse": { + "description": "The response model for the Delete API. The response body will be empty signifying there's alias available with the given `aliasId` anymore.", + "type": "object" + }, + "AliasListResponse": { + "description": "The response model for the List API. Returns a list of all the previously created aliases.", + "type": "object", + "properties": { + "aliases": { + "description": "A list of all the previously created aliases.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AliasListItem" + } + } + } + }, + "AliasListItem": { + "description": "Detailed information for the alias.", + "type": "object", + "properties": { + "createdTimestamp": { + "description": "The created timestamp for the alias.", + "type": "string", + "readOnly": true + }, + "aliasId": { + "description": "The id for the alias.", + "type": "string", + "readOnly": true + }, + "resourceId": { + "description": "The id for the resource that this alias references (could be null if the alias has not been assigned).", + "type": "string", + "readOnly": true + }, + "lastUpdatedTimestamp": { + "description": "The timestamp of the last time the alias was assigned.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Assign.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Assign.json new file mode 100644 index 000000000000..352eacf788fc --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Assign.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "aliasId": "[aliasId]", + "resourceId": "[resourceId]" + }, + "responses": { + "204": { + "body": {} + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - Error message." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Create.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Create.json new file mode 100644 index 000000000000..173db30afe23 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Create.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "201": { + "headers": {}, + "body": { + "aliasId": "25084fb7-307a-4720-8f91-7952a0b91012" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - Error message." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Delete.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Delete.json new file mode 100644 index 000000000000..11adb1e66418 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_Delete.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "aliasId": "[aliasId]" + }, + "responses": { + "204": { + "body": {} + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - One or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_List.json b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_List.json new file mode 100644 index 000000000000..e74d2c24197f --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Alias/preview/1.0/examples/Alias_List.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "aliases": [ + { + "createdTimestamp": "2020-02-13T21:19:11+00:00", + "aliasId": "a8a4b8bb-ecf4-fb27-a618-f41721552766", + "resourceId": "e89aebb9-70a3-8fe1-32bb-1fbd0c725f14", + "lastUpdatedTimestamp": "2020-02-13T21:19:22+00:00" + }, + { + "createdTimestamp": "2020-02-13T21:19:11+00:00", + "aliasId": "1856dbfc-7a66-ee5a-bf8d-51dbfe1906f6", + "resourceId": null, + "lastUpdatedTimestamp": "2020-02-13T21:19:11+00:00" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - One or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/data.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/data.json new file mode 100644 index 000000000000..3661631adc93 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/data.json @@ -0,0 +1,618 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Data Service", + "version": "1.0", + "description": "APIs for uploading map data to Azure Maps." + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "201Async": { + "description": "The resource has been created successfully.", + "schema": { + "$ref": "#/definitions/LongRunningOperationResult" + }, + "headers": { + "Location": { + "type": "string", + "description": "A URI where details on the newly created resource can be found." + } + } + }, + "202Async": { + "description": "**Supported only for async request.**\nRequest Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "UploadDataFormat": { + "name": "dataFormat", + "description": "Data format of the content being uploaded.", + "type": "string", + "in": "query", + "required": true, + "enum": [ + "geojson", + "zip" + ], + "x-ms-enum": { + "name": "UploadDataFormat", + "modelAsString": false, + "values": [ + { + "value": "geojson", + "description": "[GeoJSON](https://tools.ietf.org/html/rfc7946) is a JSON based geospatial data interchange format." + }, + { + "value": "zip", + "description": "Compressed data format." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "Udid": { + "name": "udid", + "description": "The unique data id for the content. The `udid` must have been obtained from a successful [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadpreview) call.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/mapData/upload": { + "post": { + "x-publish": true, + "description": "**Data Upload API**\n\n**Applies to:** S1 pricing tier.\n\nThe Data Upload API allows the caller to upload data content to the Azure Maps service.\nYou can use this API in a scenario like uploading a collection of Geofences in `GeoJSON` \nformat, for use in our [Azure Maps Geofencing Service](https://docs.microsoft.com/rest/api/maps/spatial).\n\n## Submit Upload Request\n\nTo upload your content you will use a `POST` request. The request body will contain the data to upload. The \n`dataFormat` query parameter will contain the format for the data, the `dataSharingLevel` query parameter \ncan contain the sharing level for the data. The `Content-Type` header will be set to the content type of the \ndata.\n\nFor example, to upload a collection of geofences in `GeoJSON` format, set the request body to the geofence \ncontent. Set the `dataFormat` query parameter to _geojson_, and set the `Content-Type` header to either one \nof the following media types:\n\n- `application/json`\n- `application/vnd.geo+json`\n- `application/octet-stream`\n\nHere's a sample request body for uploading a simple Geofence represented as a circle geometry using a center \npoint and a radius. The sample below is in `GeoJSON`:\n\n```json\n{\n \"type\": \"FeatureCollection\",\n \"features\": [{\n \"type\": \"Feature\",\n \"geometry\": {\n \"type\": \"Point\",\n \"coordinates\": [-122.126986, 47.639754]\n },\n \"properties\": {\n \"geometryId\": \"001\",\n \"radius\": 500\n }\n }]\n}\n```\n\nThe Data Upload API performs a \n[long-running request](https://docs.microsoft.com/azure/azure-maps/private-atlas-long-running-operation).\n\n## Data Upload Limits\n\nPlease, be aware that currently every Azure Maps account has a [data storage limit](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/azure-subscription-service-limits#azure-maps-limits). \nOnce the storage limit is reached, all the new upload API calls will return a `409 Conflict` http error response. \nYou can always use the [Data Delete API](https://docs.microsoft.com/rest/api/maps/data/deletepreview) to \ndelete old/unused content and create space for new uploads.", + "operationId": "Data_UploadPreview", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Upload GeoJSON data containing geometries that represent a collection of geofences": { + "$ref": "./examples/Upload.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/UploadDataFormat" + }, + { + "name": "UploadContent", + "in": "body", + "description": "The content to upload.", + "required": true, + "schema": { + "type": "object" + } + } + ], + "responses": { + "200": { + "description": "Data upload failed. The uploaded content did not satisfy all the validation checks. The response body contains all the errors that were encountered.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "201": { + "$ref": "#/responses/201Async" + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mapData/{udid}": { + "put": { + "x-publish": true, + "description": "**Data Update API**\n\n**Applies to:** S1 pricing tier.\n\nThe Data Update API allows the caller to update a previously uploaded data content.\n\nYou can use this API in a scenario like adding or removing geofences to or from an existing collection of geofences. \nGeofences are uploaded using the [Data Upload API](https://docs.microsoft.com/rest/api/maps/data/uploadpreview), for \nuse in the [Azure Maps Geofencing Service](https://docs.microsoft.com/rest/api/maps/spatial).\n\nPlease note that the Update API will *replace* and *override* the existing data content.\n\n## Submit Update Request\n\nTo update your content you will use a `PUT` request. The request body will contain the new data that will replace \nthe existing data. The `Content-Type` header will be set to the content type of the data, and the path will contain \nthe `udid` of the data to be update.\n\nFor example, to update a collection of geofences that were previously uploaded using the Upload API, place the new \ngeofence content in the request body. Set the `udid` parameter in the path to the `udid` of the data received \npreviously in the upload API response. And set the `Content-Type` header to one of the following media types:\n\n- `application/json`\n- `application/vnd.geo+json`\n- `application/octet-stream`\n\nHere's a sample request body for updating a simple Geofence. It's represented as a circle geometry using a center \npoint and a radius. The sample below is in `GeoJSON`:\n\n```json\n{\n \"type\": \"FeatureCollection\",\n \"features\": [{\n \"type\": \"Feature\",\n \"geometry\": {\n \"type\": \"Point\",\n \"coordinates\": [-122.126986, 47.639754]\n },\n \"properties\": {\n \"geometryId\": \"001\",\n \"radius\": 500\n }\n }]\n}\n```\n\nThe previously uploaded geofence had a radius of 100m. The above request will update it to 500m.\n\nThe Data Update API performs a \n[long-running request](https://docs.microsoft.com/azure/azure-maps/private-atlas-long-running-operation).\n\n## Data Update Limits\n\nPlease, be aware that currently every Azure Maps account has a [data storage limit](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/azure-subscription-service-limits#azure-maps-limits). \nOnce the storage limit is reached, all the new upload API calls will return a `409 Conflict` http error response. \nYou can always use the [Data Delete API](https://docs.microsoft.com/rest/api/maps/data/deletepreview) to \ndelete old/unused content and create space for new uploads.", + "operationId": "Data_UpdatePreview", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Update previously uploaded GeoJSON data containing geometries that represent a collection of geofences": { + "$ref": "./examples/Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Udid" + }, + { + "name": "UpdateContent", + "in": "body", + "description": "The new content that will update/replace the previously uploaded content.", + "required": true, + "schema": { + "type": "object" + } + } + ], + "responses": { + "200": { + "description": "Data update failed. The uploaded content did not satisfy all the validation checks. The response body contains all the errors that were encountered.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "201": { + "$ref": "#/responses/201Async" + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Data Download API**\n\n**Applies to:** S1 pricing tier.\n
\n\nThis API allows the caller to download a previously uploaded data content.
\nYou can use this API in a scenario like downloading an existing collection of geofences uploaded previously using the [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadpreview) for use in our [Azure Maps Geofencing Service](https://docs.microsoft.com/en-us/rest/api/maps/spatial). \n\n\n### Submit Download Request\n\nTo download your content you will use a `GET` request where the path will contain the `udid` of the data to download. Optionally, you can also pass in an `Accept` header to specify a preference for the `Content-Type` of the data response.
\nFor example, to download a collection of geofences previously uploaded using the Upload API, set the `udid` parameter in the path to the `udid` of the data received previously in the upload API response and set the `Accept` header to either one of the following media types: \n \n - `application/json`\n - `application/vnd.geo+json`\n - `application/octet-stream`\n\n\n### Download Data Response\n\nThe Download API will return a HTTP `200 OK` response if the data resource with the passed-in `udid` is found, where the response body will contain the content of the data resource.
\nA HTTP `400 Bad Request` error response will be returned if the data resource with the passed-in `udid` is not found.
\n\nHere's a sample response body for a simple geofence represented in `GeoJSON` uploaded previously using the Upload API:\n
\n\n```json\n{\n \"type\": \"FeatureCollection\",\n \"features\": [{\n \"type\": \"Feature\",\n \"geometry\": {\n \"type\": \"Point\",\n \"coordinates\": [-122.126986, 47.639754]\n },\n \"properties\": {\n \"geometryId\": \"001\",\n \"radius\": 500\n }\n }]\n}\n```", + "operationId": "Data_DownloadPreview", + "x-ms-examples": { + "Download previously uploaded GeoJSON data containing geometries that represent a collection of geofences": { + "$ref": "./examples/Download.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Udid" + } + ], + "responses": { + "200": { + "description": "Data download request completed successfully. The response body will contain the content for the passed in `udid`.", + "schema": { + "$ref": "#/definitions/MapDataDownloadResponse" + }, + "headers": { + "Content-Type": { + "type": "string", + "description": "The content-type for the Download API response." + } + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "description": "**Data Delete API**\n\n**Applies to:** S1 pricing tier.\n
\n\nThis API allows the caller to delete a previously uploaded data content.
\nYou can use this API in a scenario like removing geofences previously uploaded using the [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadpreview) for use in our [Azure Maps Geofencing Service](https://docs.microsoft.com/en-us/rest/api/maps/spatial). You can also use this API to delete old/unused uploaded content and create space for new content.\n\n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `udid` of the data to delete.
\nFor example, to delete a collection of geofences previously uploaded using the Upload API, set the `udid` parameter in the path to the `udid` of the data received previously in the upload API response. \n\n\n### Delete Data Response\n\nThe Data Delete API returns a HTTP `204 No Content` response with an empty body, if the data resource was deleted successfully.
\nA HTTP `400 Bad Request` error response will be returned if the data resource with the passed-in `udid` is not found. ", + "operationId": "Data_DeletePreview", + "x-ms-examples": { + "Delete previously uploaded GeoJSON data containing geometries that represent a collection of geofences": { + "$ref": "./examples/Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Udid" + } + ], + "responses": { + "204": { + "description": "Data delete request completed successfully. The content for `udid` was deleted on the server.", + "schema": { + "$ref": "#/definitions/MapDataDeleteResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mapData": { + "get": { + "x-publish": true, + "description": "**Data List API**\n\n**Applies to:** S1 pricing tier.\n
\n\nThis API allows the caller to fetch a list of all content uploaded previously using the [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadpreview). \n\n\n### Submit List Request\n\nTo list all your map data content you will issue a `GET` request with no additional parameters.\n\n\n### List Data Response\n\nThe Data List API returns the complete list of all data in `json` format. The response contains the following details for each data resource:\n\n > udid - The unique data id for the data resource.\n\n > location - The location of the data resource. Execute a HTTP `GET` on this location to download the data.\n\n\nHere's a sample response returning the `udid` and `location` of 3 data resources: \n\n
\n\n```json\n{\n \"mapDataList\": \n [\n {\n \"udid\": \"9a1288fa-1858-4a3b-b68d-13a8j5af7d7c\",\n \"location\": \"https://atlas.microsoft.com/mapData/9a1288fa-1858-4a3b-b68d-13a8j5af7d7c?api-version=1.0\",\n \"sizeInBytes\": 29920,\n \"uploadStatus\": \"Completed\"\n },\n {\n \"udid\": \"8b1288fa-1958-4a2b-b68e-13a7i5af7d7c\",\n \"location\": \"https://atlas.microsoft.com/mapData/8b1288fa-1958-4a2b-b68e-13a7i5af7d7c?api-version=1.0\",\n \"sizeInBytes\": 1339,\n \"uploadStatus\": \"Completed\"\n },\n {\n \"udid\": \"7c1288fa-2058-4a1b-b68f-13a6h5af7d7c\",\n \"location\": \"https://atlas.microsoft.com/mapData/7c1288fa-2058-4a1b-b68f-13a6h5af7d7c?api-version=1.0\",\n \"sizeInBytes\": 1650,\n \"uploadStatus\": \"Pending\"\n }]\n}\n```\n\n
", + "operationId": "Data_ListPreview", + "x-ms-examples": { + "List all the previously uploaded data": { + "$ref": "./examples/List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "List data request completed successfully. The response body contains a list of all the previously uploaded data.", + "schema": { + "$ref": "#/definitions/MapDataListResponse" + }, + "headers": { + "Content-Type": { + "type": "string", + "description": "The content-type for the Download API response." + } + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "LongRunningOperationResult": { + "description": "The response model for a Long-Running Operations API.", + "type": "object", + "properties": { + "operationId": { + "description": "The Id for this long-running operation.", + "type": "string" + }, + "status": { + "description": "The status state of the request.", + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": false, + "values": [ + { + "value": "NotStarted", + "description": "The request has not started processing yet." + }, + { + "value": "Running", + "description": "The request has started processing." + }, + { + "value": "Failed", + "description": "The request has one or more failures." + }, + { + "value": "Succeeded", + "description": "The request has successfully completed." + } + ] + }, + "readOnly": true + }, + "created": { + "description": "The created timestamp.", + "type": "string", + "readOnly": true + }, + "resourceLocation": { + "description": "The location URI for details about the created resource. This is only provided when the request was successfully completed.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/ODataError" + }, + "warning": { + "$ref": "#/definitions/ODataError" + } + } + }, + "MapDataDownloadResponse": { + "description": "The response model for the Data Download API. The response body will contain the content for the passed in `udid`.", + "type": "object" + }, + "MapDataDeleteResponse": { + "description": "The response model for the Data Delete API. The response body will be empty signifying there's no content available for the `udid` anymore.", + "type": "object" + }, + "MapDataListResponse": { + "description": "The response model for the Data List API. Returns a list of all the previously uploaded data.", + "type": "object", + "properties": { + "mapDataList": { + "description": "A list of all the previously uploaded data.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MapDataDetailInfo" + } + } + } + }, + "MapDataDetailInfo": { + "description": "Detail information for the data.", + "type": "object", + "properties": { + "udid": { + "description": "The unique data id for the data.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The location of the data. Execute a HTTP `GET` on this location to download the data.", + "type": "string", + "readOnly": true + }, + "sizeInBytes": { + "description": "The size of the content in bytes.", + "type": "integer", + "format": "int64", + "readOnly": true + }, + "uploadStatus": { + "description": "The current upload status of the content.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Delete.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Delete.json new file mode 100644 index 000000000000..ccf95148e20a --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Delete.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "udid": "25084fb7-307a-4720-8f91-7952a0b91012" + }, + "responses": { + "204": { + "body": {} + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Download.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Download.json new file mode 100644 index 000000000000..1c065fe041ea --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Download.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "udid": "25084fb7-307a-4720-8f91-7952a0b91012" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + -122.126986, + 47.639754 + ] + }, + "properties": { + "geometryId": "001", + "radius": 500 + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/List.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/List.json new file mode 100644 index 000000000000..741fdd026baf --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/List.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "mapDataList": [ + { + "udid": "f6495f62-94f8-0ec2-c252-45626f82fcb2", + "location": "https://atlas.microsoft.com/mapData/f6495f62-94f8-0ec2-c252-45626f82fcb2?api-version=1.0", + "sizeInBytes": 29920, + "uploadStatus": "Completed" + }, + { + "udid": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "location": "https://atlas.microsoft.com/mapData/8b1288fa-1958-4a2b-b68e-13a7i5af7d7c?api-version=1.0", + "sizeInBytes": 1339, + "uploadStatus": "Completed" + }, + { + "udid": "7c1288fa-2058-4a1b-b68f-13a6h5af7d7c", + "location": "https://atlas.microsoft.com/mapData/7c1288fa-2058-4a1b-b68f-13a6h5af7d7c?api-version=1.0", + "sizeInBytes": 1650, + "uploadStatus": "Pending" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Update.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Update.json new file mode 100644 index 000000000000..20caaf53f5d6 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Update.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "udid": "25084fb7-307a-4720-8f91-7952a0b91012", + "UpdateContent": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + -122.126986, + 47.639754 + ] + }, + "properties": { + "geometryId": "001", + "radius": 500 + } + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://atlas.microsoft.com/mapData/metadata/{udid}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + }, + "body": { + "operationId": "{operationId}", + "status": "Succeeded", + "created": "2020-01-02 1:02:03 AM +00:00", + "resourceLocation": "https://atlas.microsoft.com/mapData/metadata/{resourceId}?api-version=1.0" + } + }, + "202": { + "headers": { + "Location": "https://atlas.microsoft.com/mapData/operations/{operationId}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + } + }, + "200": { + "headers": {}, + "body": { + "error": { + "code": "400 Bad Request", + "message": "Upload request failed. Your data has been removed as we encountered the following problems with it: Map data is not a valid GeoJSON geometry." + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Upload.json b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Upload.json new file mode 100644 index 000000000000..dd663049a9a0 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Data/preview/1.0/examples/Upload.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "dataFormat": "geojson", + "UploadContent": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + -122.126986, + 47.639754 + ] + }, + "properties": { + "geometryId": "001", + "radius": 500 + } + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://atlas.microsoft.com/mapData/metadata/{udid}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + }, + "body": { + "operationId": "{operationId}", + "status": "Succeeded", + "created": "2020-01-02 1:02:03 AM +00:00", + "resourceLocation": "https://atlas.microsoft.com/mapData/metadata/{resourceId}?api-version=1.0" + } + }, + "202": { + "headers": { + "Location": "https://atlas.microsoft.com/mapData/operations/{operationId}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + } + }, + "200": { + "headers": {}, + "body": { + "error": { + "code": "400 Bad Request", + "message": "Upload request failed. Your data has been removed as we encountered the following problems with it: Map data is not a valid GeoJSON geometry." + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/dataset.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/dataset.json new file mode 100644 index 000000000000..6f2f381712b8 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/dataset.json @@ -0,0 +1,608 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Dataset Service", + "version": "1.0", + "description": "APIs for managing datasets from uploaded data in Azure Maps." + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "200Async": { + "description": "The operation's status response.", + "schema": { + "$ref": "#/definitions/LongRunningOperationResult" + } + }, + "201Async": { + "description": "The resource has been created successfully.", + "schema": { + "$ref": "#/definitions/LongRunningOperationResult" + }, + "headers": { + "Location": { + "type": "string", + "description": "A URI where details on the newly created resource can be found." + } + } + }, + "202Async": { + "description": "**Supported only for async request.**\nRequest Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "ConversionIdQuery": { + "name": "conversionId", + "description": "The unique ID used to create the dataset. The `conversionId` must have been obtained from a successful call to the Conversion Service Convert API and must be provided with multiple query parameters with same name (if more than one is provided). May not be provided in conjunction with the `udid` query parameter.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "UdidDataset": { + "name": "udid", + "description": "The unique data ID used to create the dataset. The `udid` must have been obtained from a successful call to the Data Service Upload API and must be provided with multiple query parameters with the same name (if more than one is provided). May not be provided in conjunction with `conversionId` query parameter.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "DescriptionDataset": { + "name": "description", + "description": "The description to be given to the dataset.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "DatasetId": { + "name": "datasetId", + "type": "string", + "in": "path", + "description": "The identifier for the dataset to query from.", + "required": true, + "x-ms-parameter-location": "method" + }, + "Type": { + "name": "type", + "type": "string", + "in": "query", + "description": "The type of data to create the dataset with.", + "enum": [ + "facility" + ], + "x-ms-enum": { + "name": "DatasetType", + "modelAsString": false, + "values": [ + { + "value": "facility", + "description": "Facility Maps data type." + } + ] + }, + "required": true, + "x-ms-parameter-location": "method" + }, + "ImportUdid": { + "name": "udid", + "description": "The unique data ID used to import data into the dataset. The `udid` must have been obtained from a successful call to the Data Service Upload API.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "ImportType": { + "name": "type", + "type": "string", + "in": "query", + "description": "The type of data to import into the dataset with.", + "enum": [ + "fixture" + ], + "x-ms-enum": { + "name": "ImportDataType", + "modelAsString": false, + "values": [ + { + "value": "fixture", + "description": "Area and point element data." + } + ] + }, + "required": true, + "x-ms-parameter-location": "method" + }, + "AppendDatasetId": { + "name": "datasetId", + "type": "string", + "in": "query", + "description": "The ID for the dataset to append to.", + "required": false, + "x-ms-parameter-location": "method" + }, + "StatusId": { + "name": "statusId", + "type": "string", + "in": "path", + "description": "The ID to query the status for the dataset create/import request.", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/dataset/create": { + "post": { + "x-publish": true, + "description": "**Dataset Create API**\n\n**Applies to:** S1 pricing tier.\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API \nand SDK. The Dataset APIs are part of Creator. This API allows the caller to create a dataset from data that \nwas uploaded to the Azure Maps Data Service.\n\nYou can use this API in a scenario like uploading a DWG zip package for a building, converting the zip package using \nthe Azure Maps Conversion Service, creating a dataset from the converted zip package. The created dataset can be \nused to create tilesets using the Azure Maps Tileset Service and can be queried via the Azure Maps WFS Service.\n\n## Submit Create Request\n\nTo create your dataset, you will use a `POST` request where the `conversionId` query parameter is an id that represents \nthe converted DWG zip package, the `type` parameter will describe the data type to use for the dataset, the `datasetId`\nparameter will describe if the provided data should be appended to a current dataset and, optionally, the \n`description` query parameter will contain a description (if description is not provided a default description will be \ngiven).\n\nThe Create API is a \n[long-running request](https://aka.ms/am-creator-lrt).", + "operationId": "Dataset_CreatePreview", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Create dataset from a converted CAD file provided by conversionId": { + "$ref": "./examples/Dataset_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ConversionIdQuery" + }, + { + "$ref": "#/parameters/UdidDataset" + }, + { + "$ref": "#/parameters/Type" + }, + { + "$ref": "#/parameters/AppendDatasetId" + }, + { + "$ref": "#/parameters/DescriptionDataset" + } + ], + "responses": { + "201": { + "$ref": "#/responses/201Async" + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/dataset/import/{datasetId}": { + "patch": { + "x-publish": true, + "description": "**Dataset Import API**\n\n**Applies to:** S1 pricing tier.\n
\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API \nand SDK. The Dataset APIs are part of Creator. This API allows the caller to bulk import data into a dataset \nfrom data that was uploaded to the Azure Maps Data service.
\n\n### Submit Import Request\n\nTo import data into your dataset, you will use a `PATCH` request where the `datasetId` query parameter is the \ndataset you want to import your data into, the `udid` query parameter is the data you want to import, and the `type` \nparameter will describe the data type to use for the import data.
\n\nThe Import API is a \n[long-running request](https://aka.ms/am-creator-lrt).", + "operationId": "Dataset_ImportPreview", + "x-ms-examples": { + "Import data into previously created dataset": { + "$ref": "./examples/Dataset_Import.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/DatasetId" + }, + { + "$ref": "#/parameters/ImportUdid" + }, + { + "$ref": "#/parameters/ImportType" + } + ], + "responses": { + "200": { + "$ref": "#/responses/200Async" + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/dataset/{datasetId}": { + "delete": { + "x-publish": true, + "description": "**Dataset Delete API**\n\n**Applies to:** S1 pricing tier.\n
\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Dataset APIs are part of Creator.\nThis API allows the caller to delete a previously created dataset.
\nYou can also use this API to delete old/unused datasets to create space for new Creator content.\n\n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `datasetId` of the dataset to delete.
\n\n\n### Delete Data Response\n\nThe Delete API returns a HTTP `204 No Content` response if the dataset resource was deleted successfully.
", + "operationId": "Dataset_DeletePreview", + "x-ms-examples": { + "Delete previously created dataset": { + "$ref": "./examples/Dataset_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/DatasetId" + } + ], + "responses": { + "204": { + "description": "The dataset delete request completed successfully. The resource referenced by the `datasetId` was deleted from the server.", + "schema": { + "$ref": "#/definitions/DatasetDeleteResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/dataset": { + "get": { + "x-publish": true, + "description": "**Dataset List API**\n\n**Applies to:** S1 pricing tier.\n
\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Dataset APIs are part of Creator.\nThis API allows the caller to fetch a list of all previously successfully created datasets.\n\n\n### Submit List Request\n\nTo list all your datasets, you will issue a `GET` request with no additional parameters.
\n\n\n### List Data Response\n\nThe List API returns the complete list of all datasets in `json` format. The response contains the following fields (if they are not null or empty):\n > created - The timestamp the dataset was created.\n > datasetId - The id for the dataset.\n > description - The description for the dataset.\n > datasetSources - The source data that was used when the create request was issued.\n\nThe `datasetSources` describes the source data that was used when the create request was issued and contains the following elements (if they are not null or empty):\n > conversionIds - The list of `conversionId` (null if none were provided).\n > udids - The list of `udid` (null if none were provided).\n > appendDatasetId - The `datasetId` that was used for an append operation (null if none was used).\n > type - The type of data stored in the dataset that was created.\n\nHere's a sample response returning the `timestamp`, `datasetId`, `description`, and `datasetSources` of 3 dataset resources:\n\n
\n\n```json\n{\n \"datasets\": [\n {\n \"timestamp\": \"2020-01-01T22:50:48+00:00\",\n \"datasetId\": \"f6495f62-94f8-0ec2-c252-45626f82fcb2\",\n \"description\": \"Some description or comment for the dataset.\",\n \"datasetSources\": {\n \"conversionIds\": [\n \"15d21452-c9bb-27b6-5e79-743ca5c3205d\"\n ],\n \"type\": \"facility\"\n },\n \"status\": \"Succeeded\"\n },\n {\n \"timestamp\": \"2020-01-01T22:57:53+00:00\",\n \"datasetId\": \"8b1288fa-1958-4a2b-b68e-13a7i5af7d7c\",\n \"description\": \"Create from upload '0c1288fa-2058-4a1b-b68d-13a5f5af7d7c'.\",\n \"datasetSources\": {\n \"udids\": [\n \"0c1288fa-2058-4a1b-b68d-13a5f5af7d7c\"\n ],\n \"type\": \"facility\"\n },\n \"status\": \"Succeeded\"\n },\n {\n \"timestamp\": \"2020-01-01T20:39:36+00:00\",\n \"datasetId\": \"7c1288fa-2058-4a1b-b68f-13a6h5af7d7c\",\n \"description\": \"Some other description or comment for the dataset.\",\n \"datasetSources\": {\n \"conversionIds\": [\n \"15d21452-c9bb-27b6-5e79-743ca5c3205d\"\n ],\n \"appendDatasetId\": \"8b1288fa-1958-4a2b-b68e-13a7i5af7d7c\",\n \"type\": \"facility\"\n },\n \"status\": \"Succeeded\"\n }\n ]\n}\n```\n
", + "operationId": "Dataset_ListPreview", + "x-ms-examples": { + "List all the previously created datasets": { + "$ref": "./examples/Dataset_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "The list dataset request completed successfully. The response body contains a list of all the previously created datasets.", + "schema": { + "$ref": "#/definitions/DatasetListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "LongRunningOperationResult": { + "description": "The response model for a Long-Running Operations API.", + "type": "object", + "properties": { + "operationId": { + "description": "The Id for this long-running operation.", + "type": "string" + }, + "status": { + "description": "The status state of the request.", + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": false, + "values": [ + { + "value": "NotStarted", + "description": "The request has not started processing yet." + }, + { + "value": "Running", + "description": "The request has started processing." + }, + { + "value": "Failed", + "description": "The request has one or more failures." + }, + { + "value": "Succeeded", + "description": "The request has successfully completed." + } + ] + }, + "readOnly": true + }, + "created": { + "description": "The created timestamp.", + "type": "string", + "readOnly": true + }, + "resourceLocation": { + "description": "The location URI for details about the created resource. This is only provided when the request was successfully completed.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/ODataError" + }, + "warning": { + "$ref": "#/definitions/ODataError" + } + } + }, + "DatasetDeleteResponse": { + "description": "The response model for the Dataset Delete API. The response body will be empty signifying there's no content available for the `datasetId` anymore.", + "type": "object" + }, + "DatasetListResponse": { + "description": "The response model for the Dataset List API. The response body will contain a list of all the previously created datasets.", + "type": "object", + "properties": { + "datasets": { + "description": "A list of all the previously created datasets.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DatasetDetailInfo" + } + } + } + }, + "DatasetDetailInfo": { + "description": "Detail information for the dataset.", + "type": "object", + "properties": { + "created": { + "description": "The created timestamp for the dataset.", + "type": "string", + "readOnly": true + }, + "datasetId": { + "description": "The id for the dataset.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description for the dataset.", + "type": "string", + "readOnly": true + }, + "datasetSources": { + "$ref": "#/definitions/DatasetSources" + }, + "featureCounts": { + "description": "The feature counts for the dataset.", + "type": "object", + "readOnly": true + } + } + }, + "DatasetSources": { + "description": "Information about the details of the create request for the dataset.", + "type": "object", + "properties": { + "conversionIds": { + "description": "The list of `conversionId` that were used to create the dataset.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "udids": { + "description": "The list of `conversionId` that were used to create the dataset.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "appendDatasetId": { + "description": "The dataset that was appended to to create the current dataset.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of data stored in the dataset.", + "type": "string", + "readOnly": true + } + } + }, + "DatasetGetDetailsResponse": { + "$ref": "#/definitions/DatasetDetailInfo" + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Create.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Create.json new file mode 100644 index 000000000000..6d8513252576 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Create.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "conversionId": "[conversionId]", + "type": "facility" + }, + "responses": { + "201": { + "headers": { + "Location": "https://atlas.microsoft.com/dataset/{datasetId}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + }, + "body": { + "operationId": "{operationId}", + "status": "Succeeded", + "created": "2020-01-02 1:02:03 AM +00:00", + "resourceLocation": "https://atlas.microsoft.com/dataset/{datasetId}?api-version=1.0" + } + }, + "202": { + "headers": { + "Location": "https://atlas.microsoft.com/dataset/operations/{operationId}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - Error message." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Delete.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Delete.json new file mode 100644 index 000000000000..3ad9cf60de1c --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Delete.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "datasetId": "[datasetId]" + }, + "responses": { + "204": { + "body": {} + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - One or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Import.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Import.json new file mode 100644 index 000000000000..fa4cb9ca8950 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_Import.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "datasetId": "[conversionId]", + "udid": "[udid]", + "type": "fixture" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "operationId": "{operationId}", + "status": "Succeeded", + "created": "2020-01-02 03:04:05 AM +00:00", + "resourceLocation": "https://atlas.microsoft.com/dataset/{datasetId}?api-version=1.0" + } + }, + "202": { + "headers": { + "Location": "https://atlas.microsoft.com/dataset/operations/{operationId}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - Error message." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_List.json b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_List.json new file mode 100644 index 000000000000..4937c40e2e95 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Dataset/preview/1.0/examples/Dataset_List.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "datasets": [ + { + "created": "2020-01-02 3:04:05 AM +00:00", + "datasetId": "f6495f62-94f8-0ec2-c252-45626f82fcb2", + "description": "Some description or comment for the dataset.", + "datasetSources": { + "conversionIds": [ + "15d21452-c9bb-27b6-5e79-743ca5c3205d" + ], + "type": "facility" + }, + "featureCounts": { + "directoryInfo": 1, + "category": 18, + "facility": 1, + "level": 6, + "unit": 775, + "opening": 471, + "areaElement": 496 + } + }, + { + "created": "2020-01-02 3:04:05 PM +00:00", + "datasetId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "description": "Create from upload '0c1288fa-2058-4a1b-b68d-13a5f5af7d7c'.", + "datasetSources": { + "udids": [ + "0c1288fa-2058-4a1b-b68d-13a5f5af7d7c" + ], + "type": "facility" + }, + "featureCounts": { + "directoryInfo": 1, + "category": 2, + "facility": 1, + "level": 6, + "unit": 19 + } + }, + { + "created": "2020-01-02 3:04:05 AM +00:00", + "datasetId": "7c1288fa-2058-4a1b-b68f-13a6h5af7d7c", + "description": "Some other description or comment for the dataset.", + "datasetSources": { + "conversionIds": [ + "15d21452-c9bb-27b6-5e79-743ca5c3205d" + ], + "appendDatasetId": "8b1288fa-1958-4a2b-b68e-13a7i5af7d7c", + "type": "facility" + }, + "featureCounts": { + "directoryInfo": 1, + "category": 1, + "facility": 1, + "level": 1, + "unit": 10 + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request - One or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found - The requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "Unknown error - An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/dwgconversion.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/dwgconversion.json new file mode 100644 index 000000000000..1d5486f6caba --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/dwgconversion.json @@ -0,0 +1,474 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Conversion Service", + "version": "1.0", + "description": "APIs for converting DWG Packages in Azure Maps." + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "201Async": { + "description": "The resource has been created successfully.", + "schema": { + "$ref": "#/definitions/LongRunningOperationResult" + }, + "headers": { + "Location": { + "type": "string", + "description": "A URI where details on the newly created resource can be found." + } + } + }, + "202Async": { + "description": "**Supported only for async request.**\nRequest Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "UdidQuery": { + "name": "udid", + "description": "The unique data id for the content. The `udid` must have been obtained from a successful [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadpreview) call.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "ConversionId": { + "name": "conversionId", + "description": "The conversion id for the content. The `conversionId` must have been obtained from a successful [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview) call.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "ConversionInputType": { + "name": "inputType", + "description": "Input type of the content being converted. Currently, only `DWG` type is supported.", + "type": "string", + "in": "query", + "required": true, + "enum": [ + "DWG" + ], + "x-ms-enum": { + "name": "ConversionInputType", + "modelAsString": false, + "values": [ + { + "value": "DWG", + "description": "DWG file format." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "DescriptionDwgConversion": { + "name": "description", + "description": "User provided description of the content being converted.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/conversion/convert": { + "post": { + "x-publish": true, + "description": "**Conversion Create API**\n\n**Applies to:** S1 pricing tier.
\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and \nSDK. The Conversion API is part of Creator.
\n\nThe Conversion API lets the caller import a set of DWG design files as a zipped [Drawing Package](https://aka.ms/am-drawing-package) into Azure Maps. The [Drawing Package](https://aka.ms/am-drawing-package) should first be \nuploaded using the [Azure Maps Data Service](https://docs.microsoft.com/rest/api/maps/data). Once uploaded, use the \n`udid` returned by the [Data Upload API](https://docs.microsoft.com/rest/api/maps/data/uploadpreview) to call \nthis Conversion API.\n\n## Convert DWG package\n\nThe Conversion API performs a \n[long-running request](https://aka.ms/am-creator-lrt).\n\n## Debug DWG package issues\n\n\nDuring the Conversion process, if there are any issues with the DWG package [errors and warnings](https://aka.ms/am-conversion-errors) are provided in the response along with a *diagnostic package* to visualize \nand diagnose these issues. In case any issues are encountered with your DWG package, the Conversion operation status process as detailed \n[here](https://aka.ms/am-creator-lrt) returns the location of the *diagnostic\npackage* that can be downloaded by the caller to help them visualize and diagnose these issues. The *diagnostic package* location\ncan be found in the properties section of the conversion operation status response and looks like the following:\n\n```json\n{\n \"properties\": {\n \"diagnosticPackageLocation\": \"https://atlas.microsoft.com/mapdata/{DiagnosticPackageId}?api-version=1.0\" \n } \n}\n```\n\nThe *diagnostic package* can be downloaded by executing a `HTTP GET` request on the `diagnosticPackageLocation`.\nFor more details on how to use the tool to visualize and diagnose all the errors and warnings see [Drawing Error Visualizer](https://aka.ms/am-drawing-errors-visualizer).
\n\nA conversion operation will be marked as *success* if there are zero or more warnings but will be marked as *failed* if any errors are encountered. ", + "operationId": "Conversion_ConvertPreview", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Convert previously uploaded DWG Package": { + "$ref": "./examples/Conversion.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/UdidQuery" + }, + { + "$ref": "#/parameters/ConversionInputType" + }, + { + "$ref": "#/parameters/DescriptionDwgConversion" + } + ], + "responses": { + "201": { + "$ref": "#/responses/201Async" + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/conversion": { + "get": { + "x-publish": true, + "description": "**Conversion List API**\n\n**Applies to:** S1 pricing tier.
\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Conversion API is part of Creator.
\n\nThis API allows the caller to fetch a list of all successful data conversions submitted previously using the [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview). \n\n### Submit List Request\n\nTo list all successful conversions you will issue a `GET` request with no additional parameters.\n\n### List Data Response\n\nThe Conversion List API returns the complete list of all conversion details in `json` format.
\n\nHere is a sample response returning the details of two successful conversion requests: \n\n
\n\n```json\n{\n \"conversions\": \n [\n {\n \"conversionId\": \"54398242-ea6c-1f31-4fa6-79b1ae0fc24d\",\n \"udid\": \"31838736-8b84-11ea-bc55-0242ac130003\",\n \"created\": \"5/19/2020 9:00:00 AM +00:00\",\n \"description\": \"User provided description.\",\n \"featureCounts\": {\n \"DIR\": 1,\n \"LVL\": 3,\n \"FCL\": 1,\n \"UNIT\": 150,\n \"CTG\": 8,\n \"AEL\": 0,\n \"OPN\": 10\n }\n },\n {\n \"conversionId\": \"2acf7d32-8b84-11ea-bc55-0242ac130003\",\n \"udid\": \"1214bc58-8b84-11ea-bc55-0242ac1300039\",\n \"created\": \"5/19/2020 9:00:00 AM +00:00\",\n \"description\": \"User provided description.\",\n \"featureCounts\": {\n \"DIR\": 1,\n \"LVL\": 3,\n \"FCL\": 1,\n \"UNIT\": 150,\n \"CTG\": 8,\n \"AEL\": 0,\n \"OPN\": 10\n }\n }\n ]\n}\n```\n\n
", + "operationId": "Conversion_ListPreview", + "x-ms-examples": { + "Returns a list of all the data processed by the Conversion Service for the account": { + "$ref": "./examples/List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "List request completed successfully.", + "schema": { + "$ref": "#/definitions/ConversionListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/conversion/{conversionId}": { + "delete": { + "x-publish": true, + "description": "**Conversion Delete API**\n\n**Applies to:** S1 pricing tier.
\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Delete API is part of Creator.
\n\nThis API allows the caller to delete any data conversions created previously using the [Conversion API](https://docs.microsoft.com/en-us/rest/api/maps/conversion/convertpreview).\n\n### Submit Delete Request\n\nTo delete your conversion data you will issue a `DELETE` request where the path will contain the `conversionId` of the data to delete.\n\n### Conversion Delete Response\n\nThe Conversion Delete API returns a HTTP `204 No Content` response with an empty body, if the converted data resources were deleted successfully.
\nA HTTP `400 Bad Request` error response will be returned if no resource associated with the passed-in `conversionId` is found. ", + "operationId": "Conversion_DeletePreview", + "x-ms-examples": { + "Delete previously converted content": { + "$ref": "./examples/Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/ConversionId" + } + ], + "responses": { + "204": { + "description": "Conversion delete request completed successfully. The content for `conversionId` was deleted on the server.", + "schema": { + "$ref": "#/definitions/ConversionDeleteResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "LongRunningOperationResult": { + "description": "The response model for a Long-Running Operations API.", + "type": "object", + "properties": { + "operationId": { + "description": "The Id for this long-running operation.", + "type": "string" + }, + "status": { + "description": "The status state of the request.", + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": false, + "values": [ + { + "value": "NotStarted", + "description": "The request has not started processing yet." + }, + { + "value": "Running", + "description": "The request has started processing." + }, + { + "value": "Failed", + "description": "The request has one or more failures." + }, + { + "value": "Succeeded", + "description": "The request has successfully completed." + } + ] + }, + "readOnly": true + }, + "created": { + "description": "The created timestamp.", + "type": "string", + "readOnly": true + }, + "resourceLocation": { + "description": "The location URI for details about the created resource. This is only provided when the request was successfully completed.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/ODataError" + }, + "warning": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ConversionListResponse": { + "description": "The response model for the Conversion List API.", + "type": "object", + "properties": { + "conversions": { + "description": "A list of all the previously submitted conversion requests.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ConversionListDetailInfo" + } + } + } + }, + "ConversionListDetailInfo": { + "description": "Detail information for the conversion requests.", + "type": "object", + "properties": { + "conversionId": { + "description": "A unique id that represents the artifact of a _successfully_ completed conversion process.", + "type": "string", + "readOnly": true + }, + "udid": { + "description": "The unique id of the content provided to create this conversion.", + "type": "string", + "readOnly": true + }, + "created": { + "description": "The date and time of this conversion.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "User provided description of the content being converted.", + "type": "string", + "readOnly": true + }, + "featureCounts": { + "description": "A summary of feature counts in this conversion.", + "type": "object", + "readOnly": true + } + } + }, + "ConversionDeleteResponse": { + "description": "The response model for the Conversion Delete API. The response body will be empty signifying there's no content available for the `conversionId` anymore.", + "type": "object" + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Conversion.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Conversion.json new file mode 100644 index 000000000000..b9af945a36d8 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Conversion.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "udid": "25084fb7-307a-4720-8f91-7952a0b91012", + "inputType": "DWG" + }, + "responses": { + "201": { + "headers": { + "Location": "https://atlas.microsoft.com/conversion/{conversionId}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + }, + "body": { + "operationId": "{operationId}", + "status": "Succeeded", + "created": "2020-01-02 1:02:03 AM +00:00", + "resourceLocation": "https://atlas.microsoft.com/conversion/{conversionId}?api-version=1.0" + } + }, + "202": { + "headers": { + "Location": "https://atlas.microsoft.com/conversion/operations/{operationId}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Delete.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Delete.json new file mode 100644 index 000000000000..a0858462d16c --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/Delete.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "conversionId": "99884fb7-87a9-0920-7f93-7952a0b91012" + }, + "responses": { + "204": { + "body": {} + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/List.json b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/List.json new file mode 100644 index 000000000000..357a0d0ab352 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/DwgConversion/preview/1.0/examples/List.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "conversions": [ + { + "conversionId": "54398242-ea6c-1f31-4fa6-79b1ae0fc24d", + "udid": "31838736-8b84-11ea-bc55-0242ac130003", + "created": "5/19/2020 9:00:00 AM +00:00", + "description": "User provided description.", + "featureCounts": { + "directoryInfo": 1, + "level": 3, + "facility": 1, + "unit": 150, + "category": 8, + "areaElement": 0, + "opening": 10 + } + }, + { + "conversionId": "2acf7d32-8b84-11ea-bc55-0242ac130003", + "udid": "1214bc58-8b84-11ea-bc55-0242ac1300039", + "created": "5/19/2020 9:00:00 AM +00:00", + "description": "User provided description.", + "featureCounts": { + "directoryInfo": 1, + "level": 3, + "facility": 1, + "unit": 150, + "category": 8, + "areaElement": 0, + "opening": 10 + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/CreateStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/CreateStateset.json new file mode 100644 index 000000000000..3b48b2acdd73 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/CreateStateset.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "datasetId": "5d34fbe8-87b7-f7c0-3144-c50e003a3c75", + "statesetCreateRequestBody": { + "styles": [ + { + "keyname": "s1", + "type": "boolean", + "rules": [ + { + "true": "#FF0000", + "false": "#00FF00" + } + ] + }, + { + "keyname": "s2", + "type": "number", + "rules": [ + { + "range": { + "exclusiveMaximum": 50 + }, + "color": "#343deb" + }, + { + "range": { + "minimum": 50, + "exclusiveMaximum": 70 + }, + "color": "#34ebb1" + }, + { + "range": { + "minimum": 70, + "exclusiveMaximum": 90 + }, + "color": "#eba834" + }, + { + "range": { + "minimum": 90 + }, + "color": "#eb3434" + } + ] + } + ] + } + }, + "responses": { + "200": { + "body": { + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64f" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteFeatureState.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteFeatureState.json new file mode 100644 index 000000000000..86a97a62d209 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteFeatureState.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", + "featureId": "SPC4709", + "stateKeyName": "keyName1" + }, + "responses": { + "200": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "409": { + "headers": {}, + "body": { + "error": { + "code": "409 Conflict", + "message": "The request could not be completed due to a conflict with the current state of the resource." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteStateset.json new file mode 100644 index 000000000000..e6bf9ebe20a6 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/DeleteStateset.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64f" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStates.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStates.json new file mode 100644 index 000000000000..e581ce3b7b5d --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStates.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", + "featureId": "SPC4709" + }, + "responses": { + "200": { + "body": { + "states": [ + { + "keyName": "s1", + "value": true, + "eventTimestamp": "2019-08-16 13:01" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStateset.json new file mode 100644 index 000000000000..5d2a45831fbf --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/GetStateset.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64" + }, + "responses": { + "200": { + "body": { + "datasetIdList": [ + "8d700cc7-fd2c-4e21-b402-ad3f5e524f36" + ], + "statesetStyle": { + "styles": [ + { + "keyName": "s1", + "type": "boolean", + "rules": [ + { + "true": "#FFFF00", + "false": "#FFFFFF" + } + ] + }, + { + "keyName": "s2", + "type": "number", + "rules": [ + { + "range": { + "minimum": null, + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "50" + }, + "color": "#343deb" + }, + { + "range": { + "minimum": "50", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "69" + }, + "color": "#34ebb1" + }, + { + "range": { + "minimum": "69", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "90" + }, + "color": "#eba834" + }, + { + "range": { + "minimum": "90", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": null + }, + "color": "#eb3434" + } + ] + } + ] + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/Stateset_List.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/Stateset_List.json new file mode 100644 index 000000000000..bf547d808b57 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/Stateset_List.json @@ -0,0 +1,121 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "statesetDetailList": [ + { + "statesetId": "09abcdf8-cad0-b3dd-a38f-d5ee3cff5eea", + "datasetIdList": [ + "8d700cc7-fd2c-4e21-b402-ad3f5e524f36" + ], + "statesetStyle": { + "styles": [ + { + "keyName": "s1", + "type": "boolean", + "rules": [ + { + "true": "#0FFF00", + "false": "#00FFF0" + } + ] + }, + { + "keyName": "s2", + "type": "number", + "rules": [ + { + "range": { + "minimum": null, + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "50" + }, + "color": "#343deb" + }, + { + "range": { + "minimum": "50", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "69" + }, + "color": "#34ebb1" + }, + { + "range": { + "minimum": "69", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": "90" + }, + "color": "#eba834" + }, + { + "range": { + "minimum": "90", + "maximum": null, + "exclusiveMinumum": null, + "exclusiveMaximum": null + }, + "color": "#eb3434" + } + ] + } + ] + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStates.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStates.json new file mode 100644 index 000000000000..d19d997f16f9 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStates.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", + "featureId": "SPC4709", + "featureStateUpdateRequestBody": { + "states": [ + { + "keyName": "s1", + "value": true, + "eventTimestamp": "2019-08-16 13:01" + } + ] + } + }, + "responses": { + "200": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStateset.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStateset.json new file mode 100644 index 000000000000..e540bcda431a --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/examples/UpdateStateset.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "statesetId": "b24bdb73-1305-3212-1909-a428d937b64", + "statesetStyleUpdateRequestBody": { + "styles": [ + { + "keyname": "s1", + "type": "boolean", + "rules": [ + { + "true": "#FFFF00", + "false": "#FFFFFF" + } + ] + }, + { + "keyname": "s2", + "type": "number", + "rules": [ + { + "range": { + "exclusiveMaximum": 50 + }, + "color": "#343deb" + }, + { + "range": { + "minimum": 50, + "exclusiveMaximum": 69 + }, + "color": "#34ebb1" + }, + { + "range": { + "minimum": 69, + "exclusiveMaximum": 90 + }, + "color": "#eba834" + }, + { + "range": { + "minimum": 90 + }, + "color": "#eb3434" + } + ] + } + ] + } + }, + "responses": { + "200": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/featurestate.json b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/featurestate.json new file mode 100644 index 000000000000..ec38059a4d5b --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/FeatureState/preview/1.0/featurestate.json @@ -0,0 +1,804 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Feature State Service", + "version": "1.0", + "description": "APIs for managing the dynamic feature states in Azure Maps." + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "409": { + "description": "The request could not be completed due to a conflict with the current state of the resource. Likely caused by a parallel update to the same resource.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "DatasetIdForCreate": { + "name": "datasetId", + "description": "The datasetId must have been obtained from a successful [Dataset Create API](https://review.docs.microsoft.com/en-us/rest-staging/api/maps-master/dataset/createpreview?branch=lbs) call.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "StatesetId": { + "name": "statesetId", + "description": "The stateset id that was created.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "StatesetIdInPath": { + "name": "statesetId", + "description": "The stateset id that was created.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "FeatureIdSet": { + "name": "featureId", + "description": "The id of a feature in the given dataset. If the featureId is not present in the dataset, Bad Request response will be returned.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "FeatureIdGet": { + "name": "featureId", + "description": "The id of a feature in the given stateset. If no state was set for the featureId in the stateset earlier, Bad Request response will be returned.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "FeatureIdDelete": { + "name": "featureId", + "description": "The id of a feature in the given stateset. If no state was set for the featureId in the stateset earlier, Bad Request response will be returned.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + }, + "StateKeyNameDelete": { + "name": "stateKeyName", + "description": "The Name of the state to be deleted.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/featureState/stateset/{statesetId}": { + "get": { + "x-publish": true, + "description": "**Applies to:** S1 pricing tier.\n
\n\nThis GET API allows the user to get the stateset Information.\n\nThe stateset Information includes the datasetId associated to the stateset, and the styles of that stateset.", + "operationId": "FeatureState_GetStatesetPreview", + "x-ms-examples": { + "Get stateset information with a statesetId": { + "$ref": "./examples/GetStateset.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetIdInPath" + } + ], + "responses": { + "200": { + "description": "Get request completed successfully.", + "schema": { + "$ref": "#/definitions/StatesetGetResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "description": "**Applies to:** S1 pricing tier.
This DELETE API allows the user to delete the stateset and the associated data.", + "operationId": "FeatureState_DeleteStatesetPreview", + "x-ms-examples": { + "Delete an existing stateset": { + "$ref": "./examples/DeleteStateset.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetIdInPath" + } + ], + "responses": { + "204": { + "description": "Stateset Deleted." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "put": { + "x-publish": true, + "description": "**Applies to:** S1 pricing tier.\n
\n\nThis PUT API allows the user to update the stateset style rules.", + "operationId": "FeatureState_PutStatesetPreview", + "x-ms-examples": { + "Update stateset style rules with a statesetId": { + "$ref": "./examples/UpdateStateset.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetIdInPath" + }, + { + "name": "statesetStyleUpdateRequestBody", + "in": "body", + "description": "The stateset style JSON data. Only style rules are allowed to be updated, update on keyname and type is not allowed.", + "required": true, + "schema": { + "$ref": "#/definitions/StylesObject" + } + } + ], + "responses": { + "200": { + "description": "Stateset styles are updated successfully." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/featureState/stateset": { + "post": { + "x-publish": true, + "description": "**Applies to:** S1 pricing tier.\n
\n\nThis POST API allows the user to create a new Stateset and define stateset style using request body.\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Feature State API is part of Creator. \n\nThe Feature State service allows the user to update the states of a feature and query them to be used in other services. The dynamic properties of a feature that don't belong to the dataset are referred to as *states* here.\n\nThis Feature State service pivot on the Stateset. Like Tileset, Stateset encapsulates the storage mechanism for feature states for a dataset.\n\nOnce the stateset is created, users can use that statesetId to post feature state updates and retrieve the current feature states. A feature can have any number of states. \n\nFeature state is defined by the key name, value and the timestamp. When a feature state update is posted to Azure Maps, the state value gets updated only if the provided state’s timestamp is later than the stored timestamp. \n\nAzure Maps MapControl provides a way to use these feature states to style the features. Please refer to the State Tile documentation for more information.", + "operationId": "FeatureState_CreateStatesetPreview", + "x-ms-examples": { + "Create a new stateset with a datasetId": { + "$ref": "./examples/CreateStateset.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/DatasetIdForCreate" + }, + { + "name": "statesetCreateRequestBody", + "in": "body", + "description": "The stateset style JSON data.", + "required": true, + "schema": { + "$ref": "#/definitions/StylesObject" + } + } + ], + "responses": { + "200": { + "description": "Stateset created.", + "schema": { + "$ref": "#/definitions/StatesetCreatedResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to:** S1 pricing tier.
This API allows the caller to fetch a list of all previously successfully created statesets.", + "operationId": "FeatureState_ListStatesetPreview", + "x-ms-examples": { + "List all the previously created statesets": { + "$ref": "./examples/Stateset_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "The list stateset request completed successfully. The response body contains a list of all the previously created statesets.", + "schema": { + "$ref": "#/definitions/StatesetListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/featureState/state": { + "get": { + "x-publish": true, + "operationId": "FeatureState_GetStatesPreview", + "description": "**Applies to:** S1 pricing tier.
This API returns the current state information associated with the given feature in the given stateset.", + "x-ms-examples": { + "Get the current states of a feature": { + "$ref": "./examples/GetStates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetId" + }, + { + "$ref": "#/parameters/FeatureIdGet" + } + ], + "responses": { + "200": { + "description": "Get request completed successfully.", + "schema": { + "$ref": "#/definitions/FeatureStatesStructure" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "post": { + "x-publish": true, + "operationId": "FeatureState_UpdateStatesPreview", + "description": "**Applies to:** S1 pricing tier.
\nThis POST API allows the user to update the state of the given feature in the given stateset.", + "x-ms-examples": { + "Update the states of a feature": { + "$ref": "./examples/UpdateStates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetId" + }, + { + "$ref": "#/parameters/FeatureIdSet" + }, + { + "name": "featureStateUpdateRequestBody", + "in": "body", + "description": "The feature state JSON data. A feature can have only one state at a given point in time. The specified state keyname must have been defined during the stateset creation.", + "required": true, + "schema": { + "$ref": "#/definitions/FeatureStatesStructure" + } + } + ], + "responses": { + "200": { + "description": "Feature states are updated successfully." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "x-publish": true, + "operationId": "FeatureState_DeleteStatePreview", + "description": "**Applies to:** S1 pricing tier.
This API deletes the state information identified by the StateKeyName parameter for the feature identified by the FeatureId parameter in the the stateset.", + "x-ms-examples": { + "Delete the given feature state": { + "$ref": "./examples/DeleteFeatureState.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/StatesetId" + }, + { + "$ref": "#/parameters/FeatureIdDelete" + }, + { + "$ref": "#/parameters/StateKeyNameDelete" + } + ], + "responses": { + "200": { + "description": "Feature states deleted successfully." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "409": { + "$ref": "#/responses/409" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "StatesetGetResponse": { + "description": "The response model for the successful Stateset Get API.", + "type": "object", + "properties": { + "datasetIdList": { + "description": "Dataset ID associated with the stateset.", + "type": "array", + "items": { + "type": "string" + } + }, + "statesetStyle": { + "$ref": "#/definitions/StylesObject" + } + } + }, + "StatesetListResponse": { + "description": "The response model for the successful Stateset List API.", + "type": "object", + "properties": { + "statesetDetailList": { + "description": "A list of statesets information.", + "type": "array", + "items": { + "$ref": "#/definitions/StatesetInfoObject" + } + } + } + }, + "StatesetInfoObject": { + "description": "The stateset information detail.", + "type": "object", + "properties": { + "statesetId": { + "description": "The stateset ID of this stateset.", + "type": "string" + }, + "datasetIdList": { + "description": "Dataset ID associated with the stateset.", + "type": "array", + "items": { + "type": "string" + } + }, + "statesetStyle": { + "$ref": "#/definitions/StylesObject" + } + } + }, + "StatesetCreatedResponse": { + "description": "The response model for the successful Stateset Create API.", + "type": "object", + "properties": { + "statesetId": { + "description": "The ID for the new stateset created.", + "type": "string", + "readOnly": true + } + } + }, + "FeatureStatesStructure": { + "description": "The feature states model for a feature.", + "type": "object", + "properties": { + "states": { + "description": "The feature states array.", + "type": "array", + "items": { + "$ref": "#/definitions/FeatureStateObject" + } + } + } + }, + "FeatureStateObject": { + "description": "Single feature state model.", + "type": "object", + "properties": { + "keyName": { + "description": "Feature state Keyname.", + "type": "string" + }, + "value": { + "description": "Value for the feature state.", + "type": "object" + }, + "eventTimestamp": { + "description": "Timestamp when the feature state was captured.", + "type": "string" + } + } + }, + "StylesObject": { + "description": "The styles model.", + "type": "object", + "properties": { + "styles": { + "description": "An array of stateset styles.", + "type": "array", + "items": { + "$ref": "#/definitions/StyleObject" + } + } + } + }, + "StyleObject": { + "description": "The stateset style model. The style rule could be a numeric type style rule or a boolean type style rule. Refer to NumberRuleObject and BooleanRuleObject definition.", + "type": "object" + }, + "NumberRuleObject": { + "description": "The numeric rule", + "type": "object", + "properties": { + "range": { + "$ref": "#/definitions/RangeObject" + }, + "color": { + "description": "Color is a JSON string in a variety of permitted formats, HTML-style hex values, RGB (\"#ff0\", \"#ffff00\", \"rgb(255, 255, 0)\"), RGBA (\"rgba(255, 255, 0, 1)\"), HSL(\"hsl(100, 50%, 50%)\"), and HSLA(\"hsla(100, 50%, 50%, 1)\"). Predefined HTML colors names, like yellow and blue, are also permitted.", + "type": "string" + } + } + }, + "RangeObject": { + "description": "The numeric value range for this style rule, If the value is in the range, all the conditions must hold true.", + "type": "object", + "properties": { + "minimum": { + "description": "All the number x that x ≥ minimum.", + "type": "number", + "format": "double" + }, + "maximum": { + "description": "All the number x that x ≤ maximum.", + "type": "number", + "format": "double" + }, + "exclusiveMinimum": { + "description": "All the number x that x > exclusiveMinimum.", + "type": "number", + "format": "double" + }, + "exclusiveMaximum": { + "description": "All the number x that x < exclusiveMaximum.", + "type": "number", + "format": "double" + } + } + }, + "BooleanRuleObject": { + "description": "the boolean rule", + "type": "object", + "properties": { + "true": { + "description": "The color when value is true", + "type": "string" + }, + "false": { + "description": "The color when value is false", + "type": "string" + } + } + }, + "StyleRuleBase": { + "description": "contains common properties for numeric style rules and boolean style rules.", + "discriminator": "type", + "required": [ + "keyName", + "type" + ], + "properties": { + "keyName": { + "description": "Stateset style key name. Key names are random strings but they should be unique inside style array.", + "type": "string" + }, + "type": { + "description": "The type of stateset style.", + "type": "string", + "enum": [ + "number", + "boolean" + ] + } + } + }, + "BooleanTypeStyleRule": { + "description": "the boolean type style rule object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StyleRuleBase" + } + ], + "properties": { + "rules": { + "description": "Boolean style rules.", + "type": "array", + "items": { + "$ref": "#/definitions/BooleanRuleObject" + } + } + } + }, + "NumberTypeStyleRule": { + "description": "The numeric type style rule object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StyleRuleBase" + } + ], + "properties": { + "rules": { + "description": "Numeric style rules.", + "type": "array", + "items": { + "$ref": "#/definitions/NumberRuleObject" + } + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Feedback/preview/1.0/feedback.json b/specification/maps/data-plane/Microsoft.Maps/Feedback/preview/1.0/feedback.json new file mode 100644 index 000000000000..c6c282364104 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Feedback/preview/1.0/feedback.json @@ -0,0 +1,685 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Feedback Service", + "version": "1.0" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + } + }, + "paths": {}, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "GeoJSONPosition": { + "description": "A valid `GeoJSON Position` geometry type. A `Position` is an array of numbers with two or more elements. The first two elements are _longitude_ and _latitude_, precisely in that order. _Altitude/Elevation_ is an optional third element. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.1) for details.", + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "GeoJSONGeometry": { + "description": "A valid `GeoJSON` geometry object. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1) for details.", + "type": "object", + "discriminator": "type", + "required": [ + "type" + ], + "properties": { + "type": { + "description": "Specifies the `GeoJSON` geometry type. Must be one of the seven valid GeoJSON geometry types - Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon and GeometryCollection.", + "type": "string", + "enum": [ + "Point", + "MultiPoint", + "LineString", + "MultiLineString", + "Polygon", + "MultiPolygon", + "GeometryCollection" + ], + "x-ms-enum": { + "name": "GeoJSONGeometryType", + "modelAsString": false, + "values": [ + { + "value": "Point", + "description": "`GeoJSON Point` geometry." + }, + { + "value": "MultiPoint", + "description": "`GeoJSON MultiPoint` geometry." + }, + { + "value": "LineString", + "description": "`GeoJSON LineString` geometry." + }, + { + "value": "MultiLineString", + "description": "`GeoJSON MultiLineString` geometry." + }, + { + "value": "Polygon", + "description": "`GeoJSON Polygon` geometry." + }, + { + "value": "MultiPolygon", + "description": "`GeoJSON MultiPolygon` geometry." + }, + { + "value": "GeometryCollection", + "description": "`GeoJSON GeometryCollection` geometry." + } + ] + } + } + } + }, + "Point": { + "description": "A valid `GeoJSON Point` geometry type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.2) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the geometry. Value should always be equal to \"Point\".", + "type": "string" + }, + "coordinates": { + "$ref": "#/definitions/GeoJSONPosition" + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "GeoJsonBoundingBox": { + "description": "Bounding Box. The bounding box is an array of length 2*n where n is\nthe number of dimensions represented in the contained geometries,\nwith all axes of the most southwesterly point followed by all axes\nof the more northeasterly point. The axes order of a bbox follows\nthe axes order of geometries.\n\nThe edges of the bounding box follow lines of constant longitude,\nlatitude, and elevation.", + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "Geometry": { + "description": "This represents the geometry for one or more geographical features (parks, state boundary etc.) and should be a `GeoJSON` compliant type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946) for details.", + "type": "object" + }, + "FeedbackStatusResponse": { + "type": "object", + "required": [ + "formatVersion", + "feedbackId", + "status", + "createDate", + "featureType", + "action", + "request" + ], + "properties": { + "formatVersion": { + "type": "string" + }, + "feedbackId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "createDate": { + "type": "string" + }, + "featureType": { + "type": "string" + }, + "action": { + "type": "string" + }, + "request": { + "description": "The original request object.", + "type": "object" + } + } + }, + "FeedbackAddPoiRequestBody": { + "type": "object", + "required": [ + "location", + "bbox", + "feature" + ], + "properties": { + "isMock": { + "type": "boolean" + }, + "location": { + "$ref": "#/definitions/GeoJSONPosition" + }, + "bbox": { + "$ref": "#/definitions/GeoJsonBoundingBox" + }, + "comments": { + "type": "string" + }, + "contactInformation": { + "$ref": "#/definitions/FeedbackContactInformation" + }, + "feature": { + "$ref": "#/definitions/FeedbackPoiFeature" + } + } + }, + "FeedbackFixPoiRequestBody": { + "type": "object", + "required": [ + "location", + "bbox", + "feature" + ], + "properties": { + "isMock": { + "type": "boolean" + }, + "location": { + "$ref": "#/definitions/GeoJSONPosition" + }, + "bbox": { + "$ref": "#/definitions/GeoJsonBoundingBox" + }, + "comments": { + "type": "string" + }, + "contactInformation": { + "$ref": "#/definitions/FeedbackContactInformation" + }, + "feature": { + "$ref": "#/definitions/FeedbackPoiUpdateFeature" + } + } + }, + "FeedbackDeletePoiRequestBody": { + "type": "object", + "required": [ + "location", + "bbox", + "feature" + ], + "properties": { + "isMock": { + "type": "boolean" + }, + "location": { + "$ref": "#/definitions/GeoJSONPosition" + }, + "bbox": { + "$ref": "#/definitions/GeoJsonBoundingBox" + }, + "comments": { + "type": "string" + }, + "contactInformation": { + "$ref": "#/definitions/FeedbackContactInformation" + }, + "feature": { + "$ref": "#/definitions/FeedbackPoiFeature" + } + } + }, + "FeedbackPoiFeature": { + "type": "object", + "required": [ + "name", + "category", + "geometry" + ], + "properties": { + "featureId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "category": { + "type": "string" + }, + "subcategory": { + "type": "string" + }, + "emailAddress": { + "type": "string" + }, + "faxNumber": { + "type": "string" + }, + "telephoneNumber": { + "type": "string" + }, + "website": { + "type": "string" + }, + "houseNumber": { + "type": "string" + }, + "streetName": { + "type": "string" + }, + "city": { + "type": "string" + }, + "postCode": { + "type": "string" + }, + "stateName": { + "type": "string" + }, + "country": { + "type": "string" + }, + "geometry": { + "$ref": "#/definitions/Point" + } + } + }, + "FeedbackPoiUpdateFeature": { + "type": "object", + "required": [ + "name", + "category", + "geometry" + ], + "properties": { + "featureId": { + "type": "string" + }, + "name": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "category": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "subcategory": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "emailAddress": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "faxNumber": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "telephoneNumber": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "website": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "houseNumber": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "streetName": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "city": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "postCode": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "stateName": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "country": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "geometry": { + "$ref": "#/definitions/FeedbackGeometryFieldUpdate" + } + } + }, + "FeedbackAddAddressRequestBody": { + "type": "object", + "required": [ + "location", + "bbox", + "feature" + ], + "properties": { + "isMock": { + "type": "boolean" + }, + "location": { + "$ref": "#/definitions/GeoJSONPosition" + }, + "bbox": { + "$ref": "#/definitions/GeoJsonBoundingBox" + }, + "comments": { + "type": "string" + }, + "contactInformation": { + "$ref": "#/definitions/FeedbackContactInformation" + }, + "feature": { + "$ref": "#/definitions/FeedbackAddressFeature" + } + } + }, + "FeedbackFixAddressRequestBody": { + "type": "object", + "required": [ + "location", + "bbox", + "feature" + ], + "properties": { + "isMock": { + "type": "boolean" + }, + "location": { + "$ref": "#/definitions/GeoJSONPosition" + }, + "bbox": { + "$ref": "#/definitions/GeoJsonBoundingBox" + }, + "comments": { + "type": "string" + }, + "contactInformation": { + "$ref": "#/definitions/FeedbackContactInformation" + }, + "feature": { + "$ref": "#/definitions/FeedbackAddressUpdateFeature" + } + } + }, + "FeedbackDeleteAddressRequestBody": { + "type": "object", + "required": [ + "location", + "bbox", + "feature" + ], + "properties": { + "isMock": { + "type": "boolean" + }, + "location": { + "$ref": "#/definitions/GeoJSONPosition" + }, + "bbox": { + "$ref": "#/definitions/GeoJsonBoundingBox" + }, + "comments": { + "type": "string" + }, + "contactInformation": { + "$ref": "#/definitions/FeedbackContactInformation" + }, + "feature": { + "$ref": "#/definitions/FeedbackAddressFeature" + } + } + }, + "FeedbackAddressFeature": { + "type": "object", + "required": [ + "houseNumber", + "streetName", + "city", + "postCode", + "geometry" + ], + "properties": { + "featureId": { + "type": "string" + }, + "houseNumber": { + "type": "string" + }, + "streetName": { + "type": "string" + }, + "city": { + "type": "string" + }, + "postCode": { + "type": "string" + }, + "stateName": { + "type": "string" + }, + "country": { + "type": "string" + }, + "geometry": { + "$ref": "#/definitions/Point" + } + } + }, + "FeedbackAddressUpdateFeature": { + "type": "object", + "required": [ + "houseNumber", + "streetName", + "city", + "postCode", + "geometry" + ], + "properties": { + "featureId": { + "type": "string" + }, + "houseNumber": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "streetName": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "city": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "postCode": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "stateName": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "country": { + "$ref": "#/definitions/FeedbackStringFieldUpdate" + }, + "geometry": { + "$ref": "#/definitions/FeedbackGeometryFieldUpdate" + } + } + }, + "FeedbackFixOtherRequestBody": { + "type": "object", + "required": [ + "location", + "bbox" + ], + "properties": { + "isMock": { + "type": "boolean" + }, + "location": { + "$ref": "#/definitions/GeoJSONPosition" + }, + "bbox": { + "$ref": "#/definitions/GeoJsonBoundingBox" + }, + "comments": { + "type": "string" + }, + "contactInformation": { + "$ref": "#/definitions/FeedbackContactInformation" + } + } + }, + "FeedbackContactInformation": { + "type": "object", + "properties": { + "emailAddress": { + "type": "string" + } + } + }, + "FeedbackStringFieldUpdate": { + "type": "object", + "properties": { + "current": { + "type": "string" + }, + "proposed": { + "type": "string" + } + } + }, + "FeedbackGeometryFieldUpdate": { + "type": "object", + "properties": { + "current": { + "$ref": "#/definitions/Geometry" + }, + "proposed": { + "$ref": "#/definitions/Geometry" + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/examples/GetLocationByIpAddress.json b/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/examples/GetLocationByIpAddress.json new file mode 100644 index 000000000000..4723a73f3579 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/examples/GetLocationByIpAddress.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscription-key": "[subscription-key]", + "api-version": "1.0", + "format": "json", + "ip": "2001:4898:80e8:b::189" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "countryRegion": { + "isoCode": "US" + }, + "ipAddress": "2001:4898:80e8:b::189" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/geolocation.json b/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/geolocation.json new file mode 100644 index 000000000000..af145ea5c56c --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Geolocation/preview/1.0/geolocation.json @@ -0,0 +1,249 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Geolocation Service", + "version": "1.0", + "description": "Azure Maps Geolocation REST APIs" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/geolocation/ip/{format}": { + "get": { + "x-publish": true, + "description": "\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThis service will return the ISO country code for the provided IP address. Developers can use this information to block or alter certain content based on geographical locations where the application is being viewed from. \n\n\n__Note:__ This service returns results from IANA and does not necessarily reflect the views of Microsoft Corporation.", + "operationId": "Geolocation_GetIPToLocationPreview", + "x-ms-examples": { + "GetLocationByIpAddress": { + "$ref": "./examples/GetLocationByIpAddress.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "ip", + "in": "query", + "description": "The IP address. Both IPv4 and IPv6 are allowed.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IpAddressToLocationResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "IpAddressToLocationResult": { + "description": "This object is returned from a successful call to IP Address to country/region API", + "type": "object", + "properties": { + "countryRegion": { + "$ref": "#/definitions/CountryRegion" + }, + "ipAddress": { + "description": "The IP Address of the request.", + "type": "string", + "readOnly": true + } + } + }, + "CountryRegion": { + "description": "The object containing the country/region information.", + "type": "object", + "readOnly": true, + "properties": { + "isoCode": { + "description": "The IP Address's 2-character code [(ISO 3166-1)](https://www.iso.org/iso-3166-country-codes.html) of the country or region as assigned by IANA and regional internet authorities. Please note, IP address in ranges reserved for special purpose will return Null for country/region.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetMetroArea.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetMetroArea.json new file mode 100644 index 000000000000..82d62473f11d --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetMetroArea.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "40.648677,-74.010535", + "queryType": "position" + }, + "responses": { + "200": { + "body": { + "results": [ + { + "metroId": 121, + "metroName": "NYC-NJ", + "viewport": { + "topLeftPoint": { + "latitude": 42.21254, + "longitude": -75.68527 + }, + "btmRightPoint": { + "latitude": 38.87921, + "longitude": -71.83323 + } + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -73.08158, + 41.18596 + ], + [ + -73.12026, + 41.23447 + ], + [ + -73.17959, + 41.25386 + ], + [ + -73.25697, + 41.18014 + ], + [ + -73.36529, + 41.18401 + ], + [ + -73.36013, + 41.39719 + ], + [ + -73.08158, + 41.18596 + ] + ] + ] + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetMetroAreaInfo.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetMetroAreaInfo.json new file mode 100644 index 000000000000..5105fdde77ed --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetMetroAreaInfo.json @@ -0,0 +1,359 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "121", + "detailType": "agencies" + }, + "responses": { + "200": { + "body": { + "metroName": "NYC-NJ", + "agencies": [ + { + "agencyId": "121---10368", + "agencyKey": "LIBUS", + "agencyName": "NICE bus", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---10369", + "agencyKey": "GOOGLESTAM_TRANSIT", + "agencyName": "CT Transit- Stamford", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---10370", + "agencyKey": "0", + "agencyName": "Norwalk Transit District", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---516", + "agencyKey": "NJB", + "agencyName": "NJ Transit", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---1175189", + "agencyKey": "42700", + "agencyName": "Statue Cruises", + "transitType": { + "transitType": "Ferry", + "captionOverride": "Ferry" + } + }, + { + "agencyId": "121---1058901", + "agencyKey": "SCT", + "agencyName": "Suffolk County Transit", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---1175188", + "agencyKey": "42705", + "agencyName": "Seastreak", + "transitType": { + "transitType": "Ferry", + "captionOverride": "Ferry" + } + }, + { + "agencyId": "121---1217492", + "agencyKey": "1", + "agencyName": "NYC Ferry Shuttle bus", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---726988", + "agencyKey": "LI", + "agencyName": "LIRR", + "transitType": { + "transitType": "Rail", + "captionOverride": "Rail" + } + }, + { + "agencyId": "121---1217493", + "agencyKey": "1", + "agencyName": "NYC Ferry", + "transitType": { + "transitType": "Ferry", + "captionOverride": "Ferry" + } + }, + { + "agencyId": "121---855111", + "agencyKey": "MTA NYCT", + "agencyName": "MTA Subway", + "transitType": { + "transitType": "Subway", + "captionOverride": "Subway" + } + }, + { + "agencyId": "121---855110", + "agencyKey": "MTA NYCT", + "agencyName": "Staten Island Railway", + "transitType": { + "transitType": "Rail", + "captionOverride": "Rail" + } + }, + { + "agencyId": "121---5844", + "agencyKey": "151", + "agencyName": "PATH", + "transitType": { + "transitType": "Rail", + "captionOverride": "Rail" + } + }, + { + "agencyId": "121---965398", + "agencyKey": "631", + "agencyName": "Port Authority of NY and NJ", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---865943", + "agencyKey": "5942", + "agencyName": "Suffolk County Transit", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---1020565", + "agencyKey": "24415", + "agencyName": "Staten Island Ferry", + "transitType": { + "transitType": "Ferry", + "captionOverride": "Ferry" + } + }, + { + "agencyId": "121---865942", + "agencyKey": "14639", + "agencyName": "Long Beach NY", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---1358024", + "agencyKey": "72", + "agencyName": "Ulster County Area Transit", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---1325321", + "agencyKey": "58939", + "agencyName": "Hampton Jitney", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---1440628", + "agencyKey": "63882", + "agencyName": "Housatonic Area Regional Transit", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---775148", + "agencyKey": "119", + "agencyName": "AirTrain", + "transitType": { + "transitType": "Tram", + "captionOverride": "Light Rail" + } + }, + { + "agencyId": "121---427", + "agencyKey": "1", + "agencyName": "Metro-North Railroad", + "transitType": { + "transitType": "Rail", + "captionOverride": "Rail" + } + }, + { + "agencyId": "121---856508", + "agencyKey": "5705", + "agencyName": "Roosevelt Island Cable Car", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---1460323", + "agencyKey": "65856", + "agencyName": "Downtown Alliance", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---856507", + "agencyKey": "5705", + "agencyName": "Roosevelt Island Cable Car", + "transitType": { + "transitType": "CableCar", + "captionOverride": "Cable car" + } + }, + { + "agencyId": "121---1227748", + "agencyKey": "SLE", + "agencyName": "Shore Line East", + "transitType": { + "transitType": "Rail", + "captionOverride": "Rail" + } + }, + { + "agencyId": "121---856506", + "agencyKey": "5703", + "agencyName": "NY Waterway", + "transitType": { + "transitType": "Ferry", + "captionOverride": "Ferry" + } + }, + { + "agencyId": "121---1367715", + "agencyKey": "67", + "agencyName": "Dutchess County Public Transit", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---10169", + "agencyKey": "NJT", + "agencyName": "NJ Transit Rail", + "transitType": { + "transitType": "Rail", + "captionOverride": "Rail" + } + }, + { + "agencyId": "121---10170", + "agencyKey": "NJT", + "agencyName": "NJ Transit Rail", + "transitType": { + "transitType": "Tram", + "captionOverride": "Light Rail" + } + }, + { + "agencyId": "121---857463", + "agencyKey": "MTA NYCT", + "agencyName": "MTA Bus", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---11515", + "agencyKey": "WCDOT", + "agencyName": "Bee-Line Bus", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + }, + { + "agencyId": "121---1177901", + "agencyKey": "0", + "agencyName": "LANTA", + "transitType": { + "transitType": "Bus", + "captionOverride": "Bus" + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetNearbyTransit.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetNearbyTransit.json new file mode 100644 index 000000000000..963d9675101b --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetNearbyTransit.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "40.693393,-73.988310", + "radius": 300 + }, + "responses": { + "200": { + "body": { + "results": [ + { + "id": "121---14013676", + "type": "stop", + "objectDetails": { + "stopKey": "307460", + "stopName": "Adams St/Bklyn Supreme Crt", + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + "position": { + "latitude": 40.69256, + "longitude": -73.989131 + }, + "viewport": { + "topLeftPoint": { + "latitude": 40.693471, + "longitude": -73.9903 + }, + "btmRightPoint": { + "latitude": 40.691648, + "longitude": -73.987961 + } + } + }, + { + "id": "121---14013518", + "type": "stop", + "objectDetails": { + "stopKey": "306969", + "stopName": "Jay St/Willoughby St", + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + "position": { + "latitude": 40.692661, + "longitude": -73.98718 + }, + "viewport": { + "topLeftPoint": { + "latitude": 40.693572, + "longitude": -73.988349 + }, + "btmRightPoint": { + "latitude": 40.691749, + "longitude": -73.98601 + } + } + }, + { + "id": "121---14011729", + "type": "stop", + "objectDetails": { + "stopKey": "302445", + "stopName": "Jay St/Willoughby St", + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + "position": { + "latitude": 40.692451, + "longitude": -73.987337 + }, + "viewport": { + "topLeftPoint": { + "latitude": 40.693362, + "longitude": -73.988506 + }, + "btmRightPoint": { + "latitude": 40.691539, + "longitude": -73.986167 + } + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetRealTimeArrivals.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetRealTimeArrivals.json new file mode 100644 index 000000000000..60933fce0b9f --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetRealTimeArrivals.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "121---19919516" + }, + "responses": { + "200": { + "body": { + "results": [ + { + "arrivalMinutes": 1, + "scheduleType": "realTime", + "patternId": "121---3120454", + "line": { + "lineId": "121---3128966", + "lineGroupId": "121---400175", + "direction": "forward", + "agencyId": "121---855111", + "agencyName": "MTA Subway", + "lineNumber": "R", + "lineDestination": "Forest Hills - 71 Av", + "transitType": "Subway" + }, + "stop": { + "stopId": "121---19919516", + "stopKey": "S9563736", + "stopName": "45 St [R]", + "position": { + "latitude": 40.648939, + "longitude": -74.010006 + }, + "mainTransitType": "Subway", + "mainAgencyId": "121---855111", + "mainAgencyName": "MTA Subway" + } + }, + { + "arrivalMinutes": 7, + "scheduleType": "realTime", + "patternId": "121---3120453", + "line": { + "lineId": "121---3128969", + "lineGroupId": "121---400175", + "direction": "backward", + "agencyId": "121---855111", + "agencyName": "MTA Subway", + "lineNumber": "R", + "lineDestination": "Bay Ridge - 95 St", + "transitType": "Subway" + }, + "stop": { + "stopId": "121---19919516", + "stopKey": "S9563736", + "stopName": "45 St [R]", + "position": { + "latitude": 40.648939, + "longitude": -74.010006 + }, + "mainTransitType": "Subway", + "mainAgencyId": "121---855111", + "mainAgencyName": "MTA Subway" + } + }, + { + "arrivalMinutes": 13, + "scheduleType": "realTime", + "patternId": "121---3120453", + "line": { + "lineId": "121---3128969", + "lineGroupId": "121---400175", + "direction": "backward", + "agencyId": "121---855111", + "agencyName": "MTA Subway", + "lineNumber": "R", + "lineDestination": "Bay Ridge - 95 St", + "transitType": "Subway" + }, + "stop": { + "stopId": "121---19919516", + "stopKey": "S9563736", + "stopName": "45 St [R]", + "position": { + "latitude": 40.648939, + "longitude": -74.010006 + }, + "mainTransitType": "Subway", + "mainAgencyId": "121---855111", + "mainAgencyName": "MTA Subway" + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitItinerary.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitItinerary.json new file mode 100644 index 000000000000..02fc587bd829 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitItinerary.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "68fa6e31-d1a4-4457-a15b-8f5036a76a78---201909167EB6D19458C443BFAD897246FD28DAD4:0---121", + "detailType": [ + "geometry" + ] + }, + "responses": { + "200": { + "body": { + "departureTime": "2019-09-16T18:04:53Z", + "arrivalTime": "2019-09-16T18:08:07Z", + "legs": [ + { + "legType": "Bicycle", + "legStartTime": "2019-09-16T18:04:53Z", + "legEndTime": "2019-09-16T18:08:07Z", + "steps": [ + { + "direction": { + "relativeDirection": "depart" + }, + "streetName": "3rd Avenue" + }, + { + "direction": { + "relativeDirection": "right" + }, + "streetName": "Dean Street" + }, + { + "direction": { + "relativeDirection": "right" + }, + "streetName": "5th Avenue" + } + ], + "origin": { + "position": { + "latitude": 40.680903, + "longitude": -73.983723 + } + }, + "destination": { + "position": { + "latitude": 40.682051, + "longitude": -73.976702 + } + }, + "geometry": { + "type": "LineString", + "coordinates": [ + [ + -73.98373, + 40.6809 + ], + [ + -73.98371, + 40.68089 + ], + [ + -73.98328, + 40.68152 + ], + [ + -73.9831, + 40.68179 + ], + [ + -73.98303, + 40.68189 + ], + [ + -73.98302, + 40.68191 + ], + [ + -73.9829, + 40.68208 + ], + [ + -73.98286, + 40.68214 + ], + [ + -73.9828, + 40.68223 + ], + [ + -73.98243, + 40.68278 + ], + [ + -73.98199, + 40.68342 + ], + [ + -73.98161, + 40.68398 + ], + [ + -73.98157, + 40.68405 + ], + [ + -73.9812, + 40.6839 + ], + [ + -73.97984, + 40.68338 + ], + [ + -73.9794, + 40.6832 + ], + [ + -73.97924, + 40.68314 + ], + [ + -73.97912, + 40.68309 + ], + [ + -73.97899, + 40.68304 + ], + [ + -73.97675, + 40.68217 + ], + [ + -73.97659, + 40.68211 + ], + [ + -73.97665, + 40.68203 + ], + [ + -73.97665, + 40.68203 + ], + [ + -73.97671, + 40.68205 + ] + ] + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitLineInfo.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitLineInfo.json new file mode 100644 index 000000000000..ea4d8d7bf140 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitLineInfo.json @@ -0,0 +1,599 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "121---373227", + "detailType": [ + "stops" + ] + }, + "responses": { + "200": { + "body": { + "lineGroup": { + "lineGroupId": "121---373227", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B25", + "caption1": "Dwntn Bklyn & DUMBO - Broadway Junction", + "caption2": "B25 Dwntn Bklyn & DUMBO - Broadway Junction", + "color": "6CBE45", + "transitType": "Bus" + }, + "lines": [ + { + "lineId": "121---1227940", + "lineGroupId": "121---373227", + "direction": "forward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B25", + "lineDestination": "Broadway Jct Alabama Av Via Fulton", + "mostFrequentPatternId": "121---1581548", + "transitType": "Bus" + }, + { + "lineId": "121---1227941", + "lineGroupId": "121---373227", + "direction": "backward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B25", + "lineDestination": "Downtown Bklyn Front St Via Fulton", + "mostFrequentPatternId": "121---1701359", + "transitType": "Bus" + } + ], + "stops": [ + { + "stopId": "121---14011984", + "stopKey": "303017", + "stopName": "Fulton St/Ashland Pl", + "position": { + "latitude": 40.687781, + "longitude": -73.978221 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013637", + "stopKey": "307259", + "stopName": "Fulton St/Thomas S Boyland St", + "position": { + "latitude": 40.678336, + "longitude": -73.913138 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013639", + "stopKey": "307263", + "stopName": "Fulton St/Van Sinderen Av", + "position": { + "latitude": 40.677816, + "longitude": -73.903542 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013638", + "stopKey": "307260", + "stopName": "Fulton St/Rockaway Av", + "position": { + "latitude": 40.678189, + "longitude": -73.910359 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013633", + "stopKey": "307255", + "stopName": "Fulton St/Ralph Av", + "position": { + "latitude": 40.678762, + "longitude": -73.92125 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013632", + "stopKey": "307254", + "stopName": "Fulton St/Buffalo Av", + "position": { + "latitude": 40.67894, + "longitude": -73.924108 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---31066255", + "stopKey": "901211", + "stopName": "East New York Av/Alabama Av", + "position": { + "latitude": 40.676719, + "longitude": -73.900118 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013635", + "stopKey": "307257", + "stopName": "Fulton St/Saratoga Av", + "position": { + "latitude": 40.678489, + "longitude": -73.915892 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013634", + "stopKey": "307256", + "stopName": "Fulton St/Howard Av", + "position": { + "latitude": 40.678615, + "longitude": -73.918564 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011701", + "stopKey": "302376", + "stopName": "Fulton St/Grand Av", + "position": { + "latitude": 40.682362, + "longitude": -73.961824 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011700", + "stopKey": "302375", + "stopName": "Fulton St/St James Pl", + "position": { + "latitude": 40.682662, + "longitude": -73.9633 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14193658", + "stopName": "Front St/York St", + "position": { + "latitude": 40.702464, + "longitude": -73.991858 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011703", + "stopKey": "302378", + "stopName": "Fulton St/Franklin Av", + "position": { + "latitude": 40.680982, + "longitude": -73.955289 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013751", + "stopKey": "307631", + "stopName": "Fulton St/Eastern Py", + "position": { + "latitude": 40.678066, + "longitude": -73.908188 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011702", + "stopKey": "302377", + "stopName": "Fulton St/Classon Av", + "position": { + "latitude": 40.681579, + "longitude": -73.958134 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011697", + "stopKey": "302371", + "stopName": "Fulton St/Clermont Av", + "position": { + "latitude": 40.683904, + "longitude": -73.968617 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011696", + "stopKey": "302370", + "stopName": "Fulton St/Carlton Av", + "position": { + "latitude": 40.68478, + "longitude": -73.970798 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011699", + "stopKey": "302374", + "stopName": "Fulton St/Washington Av", + "position": { + "latitude": 40.682882, + "longitude": -73.964338 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011698", + "stopKey": "302372", + "stopName": "Fulton St/Clinton Av", + "position": { + "latitude": 40.683332, + "longitude": -73.966593 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013629", + "stopKey": "307251", + "stopName": "Fulton St/Troy Av", + "position": { + "latitude": 40.679501, + "longitude": -73.934459 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011964", + "stopKey": "302948", + "stopName": "Fulton St/Flatbush Av Ext", + "position": { + "latitude": 40.688976, + "longitude": -73.981278 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011708", + "stopKey": "302383", + "stopName": "Fulton St/Kingston Av", + "position": { + "latitude": 40.67988, + "longitude": -73.941381 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013631", + "stopKey": "307253", + "stopName": "Fulton St/Utica Av", + "position": { + "latitude": 40.67919, + "longitude": -73.928636 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013630", + "stopKey": "307252", + "stopName": "Fulton St/Schenectady Av", + "position": { + "latitude": 40.679398, + "longitude": -73.932497 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013689", + "stopKey": "307491", + "stopName": "Fulton St/Hoyt St", + "position": { + "latitude": 40.69069, + "longitude": -73.985547 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011705", + "stopKey": "302380", + "stopName": "Fulton St/Nostrand Av", + "position": { + "latitude": 40.680301, + "longitude": -73.949161 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013881", + "stopKey": "307926", + "stopName": "Fulton St/Albany Av", + "position": { + "latitude": 40.679664, + "longitude": -73.937573 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011704", + "stopKey": "302379", + "stopName": "Fulton St/Bedford Av", + "position": { + "latitude": 40.6805, + "longitude": -73.952805 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011963", + "stopKey": "302947", + "stopName": "Fulton St/Bond St", + "position": { + "latitude": 40.689709, + "longitude": -73.983099 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011707", + "stopKey": "302382", + "stopName": "Fulton St/Brooklyn Av", + "position": { + "latitude": 40.680033, + "longitude": -73.944167 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011962", + "stopKey": "302945", + "stopName": "Fulton St/Smith St", + "position": { + "latitude": 40.69148, + "longitude": -73.987534 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011706", + "stopKey": "302381", + "stopName": "Fulton St/Marcy Av", + "position": { + "latitude": 40.680116, + "longitude": -73.945667 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14406637", + "stopName": "Tillary St/Cadman Pz E", + "position": { + "latitude": 40.696046, + "longitude": -73.990383 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011693", + "stopKey": "302359", + "stopName": "Cadman Plz W/Cadman Tower", + "position": { + "latitude": 40.698348, + "longitude": -73.991565 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011692", + "stopKey": "302358", + "stopName": "Cadman Pz W/Clark St", + "position": { + "latitude": 40.696696, + "longitude": -73.991464 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013676", + "stopKey": "307460", + "stopName": "Adams St/Bklyn Supreme Crt", + "position": { + "latitude": 40.69256, + "longitude": -73.989131 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011695", + "stopKey": "302369", + "stopName": "Fulton St/S Portland Av", + "position": { + "latitude": 40.686059, + "longitude": -73.974034 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14013934", + "stopKey": "308025", + "stopName": "Water St/Main St", + "position": { + "latitude": 40.703318, + "longitude": -73.991102 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011694", + "stopKey": "302368", + "stopName": "Fulton St/Lafayette Av", + "position": { + "latitude": 40.687146, + "longitude": -73.97669 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011689", + "stopKey": "302355", + "stopName": "Old Fulton St/Elizabeth Pl", + "position": { + "latitude": 40.702666, + "longitude": -73.993952 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011691", + "stopKey": "302357", + "stopName": "Cadman Pz W/Middagh St", + "position": { + "latitude": 40.699591, + "longitude": -73.99129 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + { + "stopId": "121---14011690", + "stopKey": "302356", + "stopName": "Old Fulton St/Henry St", + "position": { + "latitude": 40.701021, + "longitude": -73.991449 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitRoute.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitRoute.json new file mode 100644 index 000000000000..9074ad95aaef --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitRoute.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "origin": "40.680903,-73.983723", + "originType": "position", + "destination": "40.682051,-73.976702", + "destinationType": "position" + }, + "responses": { + "200": { + "body": { + "results": [ + { + "itineraryId": "68fa6e31-d1a4-4457-a15b-8f5036a76a78---201909167EB6D19458C443BFAD897246FD28DAD4:0---121", + "departureTime": "2019-09-16T18:04:53Z", + "arrivalTime": "2019-09-16T18:08:07Z", + "travelTimeInSeconds": 194, + "numberOfLegs": 1, + "legs": [ + { + "legType": "Bicycle", + "legStartTime": "2019-09-16T18:04:53Z", + "legEndTime": "2019-09-16T18:08:07Z", + "lengthInMeters": 877 + } + ] + }, + { + "itineraryId": "68fa6e31-d1a4-4457-a15b-8f5036a76a78---20190916E4C79AA6602341F0973B94A3A79D9D36:0---121", + "departureTime": "2019-09-16T18:04:53Z", + "arrivalTime": "2019-09-16T18:07:57Z", + "travelTimeInSeconds": 184, + "numberOfLegs": 1, + "legs": [ + { + "legType": "Bicycle", + "legStartTime": "2019-09-16T18:04:53Z", + "legEndTime": "2019-09-16T18:07:57Z", + "lengthInMeters": 851 + } + ] + }, + { + "itineraryId": "68fa6e31-d1a4-4457-a15b-8f5036a76a78---201909168C38C8E44DEC41B7B6B7DB3ADE640722:0---121", + "departureTime": "2019-09-16T18:04:53Z", + "arrivalTime": "2019-09-16T18:13:33Z", + "travelTimeInSeconds": 520, + "numberOfLegs": 3, + "legs": [ + { + "legType": "Walk", + "legStartTime": "2019-09-16T18:04:53Z", + "legEndTime": "2019-09-16T18:07:12Z", + "caption": "Douglass Street", + "lengthInMeters": 93 + }, + { + "legType": "Bicycle", + "legStartTime": "2019-09-16T18:07:12Z", + "legEndTime": "2019-09-16T18:10:22Z", + "caption": "Dean Street", + "lengthInMeters": 734 + }, + { + "legType": "Walk", + "legStartTime": "2019-09-16T18:10:22Z", + "legEndTime": "2019-09-16T18:13:33Z", + "lengthInMeters": 212 + } + ] + }, + { + "itineraryId": "68fa6e31-d1a4-4457-a15b-8f5036a76a78---201909168960D307482847EF9E0A2A59D22A5D2F:0---121", + "departureTime": "2019-09-16T18:04:53Z", + "arrivalTime": "2019-09-16T18:14:00Z", + "travelTimeInSeconds": 547, + "numberOfLegs": 3, + "legs": [ + { + "legType": "Walk", + "legStartTime": "2019-09-16T18:04:53Z", + "legEndTime": "2019-09-16T18:07:12Z", + "caption": "Douglass Street", + "lengthInMeters": 93 + }, + { + "legType": "Bicycle", + "legStartTime": "2019-09-16T18:07:12Z", + "legEndTime": "2019-09-16T18:10:22Z", + "caption": "Dean Street", + "lengthInMeters": 734 + }, + { + "legType": "Walk", + "legStartTime": "2019-09-16T18:10:22Z", + "legEndTime": "2019-09-16T18:14:00Z", + "lengthInMeters": 237 + } + ] + }, + { + "itineraryId": "68fa6e31-d1a4-4457-a15b-8f5036a76a78---2019091632031DBD314545E19C0CD726BCE4BCD8:0---121", + "departureTime": "2019-09-16T18:06:17Z", + "arrivalTime": "2019-09-16T18:16:00Z", + "travelTimeInSeconds": 583, + "numberOfLegs": 3, + "legs": [ + { + "legType": "Walk", + "legStartTime": "2019-09-16T18:06:17Z", + "legEndTime": "2019-09-16T18:11:56Z", + "caption": "Dean Street", + "lengthInMeters": 429 + }, + { + "legType": "Wait", + "legStartTime": "2019-09-16T18:11:56Z", + "legEndTime": "2019-09-16T18:12:57Z", + "caption": "B65" + }, + { + "legType": "Bus", + "legStartTime": "2019-09-16T18:12:57Z", + "legEndTime": "2019-09-16T18:16:00Z", + "caption": "B65", + "lengthInMeters": 422 + } + ] + }, + { + "itineraryId": "68fa6e31-d1a4-4457-a15b-8f5036a76a78---2019091632031DBD314545E19C0CD726BCE4BCD8:1---121", + "departureTime": "2019-09-16T18:15:04Z", + "arrivalTime": "2019-09-16T18:24:36Z", + "travelTimeInSeconds": 572, + "numberOfLegs": 4, + "legs": [ + { + "legType": "Walk", + "legStartTime": "2019-09-16T18:15:04Z", + "legEndTime": "2019-09-16T18:15:50Z", + "caption": "3rd Avenue", + "lengthInMeters": 51 + }, + { + "legType": "Wait", + "legStartTime": "2019-09-16T18:15:50Z", + "legEndTime": "2019-09-16T18:16:51Z", + "caption": "B37" + }, + { + "legType": "Bus", + "legStartTime": "2019-09-16T18:16:51Z", + "legEndTime": "2019-09-16T18:21:00Z", + "caption": "B37", + "lengthInMeters": 942 + }, + { + "legType": "Walk", + "legStartTime": "2019-09-16T18:21:01Z", + "legEndTime": "2019-09-16T18:24:36Z", + "lengthInMeters": 278 + } + ] + }, + { + "itineraryId": "68fa6e31-d1a4-4457-a15b-8f5036a76a78---2019091632031DBD314545E19C0CD726BCE4BCD8:2---121", + "departureTime": "2019-09-16T18:04:53Z", + "arrivalTime": "2019-09-16T18:15:38Z", + "travelTimeInSeconds": 645, + "numberOfLegs": 1, + "legs": [ + { + "legType": "Walk", + "legStartTime": "2019-09-16T18:04:53Z", + "legEndTime": "2019-09-16T18:15:38Z", + "lengthInMeters": 829 + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitStopInfo.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitStopInfo.json new file mode 100644 index 000000000000..1f7fc7684b6d --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/examples/GetTransitStopInfo.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "121---14013676", + "queryType": "stopId", + "detailType": [ + "lines" + ] + }, + "responses": { + "200": { + "body": { + "stop": { + "stopId": "121---14013676", + "stopKey": "307460", + "stopName": "Adams St/Bklyn Supreme Crt", + "position": { + "latitude": 40.69256, + "longitude": -73.989131 + }, + "mainTransitType": "Bus", + "mainAgencyId": "121---857463", + "mainAgencyName": "MTA Bus" + }, + "lines": [ + { + "lineId": "121---1227940", + "lineGroupId": "121---373227", + "direction": "forward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B25", + "lineDestination": "Broadway Jct Alabama Av Via Fulton", + "transitType": "Bus" + }, + { + "lineId": "121---1227962", + "lineGroupId": "121---373234", + "direction": "forward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B38", + "lineDestination": "Ltd Ridgewood Catalpa Av", + "transitType": "Bus" + }, + { + "lineId": "121---1227960", + "lineGroupId": "121---373234", + "direction": "forward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B38", + "lineDestination": "Ridgewood Metro Av", + "transitType": "Bus" + }, + { + "lineId": "121---1227961", + "lineGroupId": "121---373234", + "direction": "forward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B38", + "lineDestination": "Ridgewood Catalpa Av", + "transitType": "Bus" + }, + { + "lineId": "121---3996060", + "lineGroupId": "121---373236", + "direction": "backward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B41", + "lineDestination": "Kings Plaza Via Flatbush", + "transitType": "Bus" + }, + { + "lineId": "121---3996040", + "lineGroupId": "121---373236", + "direction": "backward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B41", + "lineDestination": "Bergen Beach Veterans Av Via Flatbush", + "transitType": "Bus" + }, + { + "lineId": "121---3996059", + "lineGroupId": "121---373236", + "direction": "backward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B41", + "lineDestination": "Limited Kings Plaza Via Flatbush", + "transitType": "Bus" + }, + { + "lineId": "121---1227976", + "lineGroupId": "121---373236", + "direction": "backward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B41", + "lineDestination": "Ltd Bergen Bch Veterans Av Via Flatbush", + "transitType": "Bus" + }, + { + "lineId": "121---1228017", + "lineGroupId": "121---373245", + "direction": "forward", + "agencyId": "121---857463", + "agencyName": "MTA Bus", + "lineNumber": "B52", + "lineDestination": "Ridgewood Term Via Gates", + "transitType": "Bus" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/mobility.json b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/mobility.json new file mode 100644 index 000000000000..afeb93435bcf --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Mobility/preview/1.0/mobility.json @@ -0,0 +1,2483 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Mobility Service", + "version": "1.0" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "MetroId": { + "name": "metroId", + "description": "The unique id of the metro area. Can be retrieved via [Get Metro Area API](https://aka.ms/AzureMapsMobilityMetro).", + "type": "integer", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "MobilityLanguage": { + "name": "language", + "description": "Language in which search results will be returned. Only NGT is supported. Please refer to [Supported languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/mobility/metroArea/id/{format}": { + "get": { + "x-publish": true, + "operationId": "Mobility_GetMetroAreaPreview", + "description": "**Metro Area API**\n\n**Applies to**: S1 pricing tier.\n\nService allows to request metro areas in which the Azure Maps Mobility Service is available. The service supports filtering results by country or coordinate location. Information returned includes Metro Area details such as metro Id, name and a representation of the metro area geometry in GeoJSON format.", + "x-ms-examples": { + "MetroArea": { + "$ref": "./examples/GetMetroArea.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "The applicable location input. Can be position (specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\") or countryCode (2-character ISO country code).", + "in": "query", + "required": true, + "type": "string" + }, + { + "name": "queryType", + "description": "The type of the query. By default originType=position, specified as a comma separated string composed by latitude followed by longitude, e.g. \"47.641268,-122.125679”.", + "in": "query", + "required": false, + "type": "string", + "default": "position", + "enum": [ + "position", + "countryCode" + ], + "x-ms-enum": { + "name": "MetroAreaQueryType", + "modelAsString": false, + "values": [ + { + "value": "position", + "description": "The origin of the route as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\"." + }, + { + "value": "countryCode", + "description": "2-character [ISO 3166-1](https://www.iso.org/iso-3166-country-codes.html) alpha-2 country code. E.g. US." + } + ] + }, + "x-ms-parameter-location": "method" + }, + { + "$ref": "#/parameters/MobilityLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MetroAreaResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mobility/metroArea/info/{format}": { + "get": { + "x-publish": true, + "operationId": "Mobility_GetMetroAreaInfoPreview", + "description": "**Metro Area Info API**\n\n**Applies to**: S1 pricing tier.\n\nService allows to request additional information for metro areas in which the Azure Maps Mobility Service is available. Information such as supported transit types, transit agencies and active alerts is available, depending on the options selected.", + "x-ms-examples": { + "MetroAreaInfo": { + "$ref": "./examples/GetMetroAreaInfo.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "metroId. The unique id of the metro area. Required parameter specifying the required metro area to search in. Can be retrieved via [Get Metro Area API](https://aka.ms/AzureMapsMobilityTransitRoute).", + "in": "query", + "required": true, + "type": "integer" + }, + { + "name": "detailType", + "description": "Specify details requested respective to the metro area as a comma separated list. Supported values are:\n * `agencies` - Return a list of all public transit agencies operating in the given metro area.\n * `alerts` - Returns a list of all active service alerts, that are defined in the metro or agency level, and are not connected to a specific line or stop.\n * `alertDetails` - Applicable only when alerts are requested. Returns details of the alerts.\n * `transitTypes` - Returns a list of all supported transit types in the given metro area.", + "in": "query", + "required": true, + "type": "array", + "items": { + "type": "string", + "enum": [ + "agencies", + "alerts", + "alertDetails", + "transitTypes" + ], + "x-ms-enum": { + "name": "MetroAreaDetailType", + "modelAsString": false, + "values": [ + { + "value": "agencies", + "description": "Return a list of all public transit agencies operating in the given metro area." + }, + { + "value": "alerts", + "description": "Returns a list of all active service alerts, that are defined in the metro or agency level, and are not connected to a specific line or stop." + }, + { + "value": "alertDetails", + "description": "Applicable only when alerts are requested. Returns details of the alerts." + }, + { + "value": "transitTypes", + "description": "Returns a list of all supported transit types in the given metro area." + } + ] + } + }, + "x-ms-parameter-location": "method" + }, + { + "$ref": "#/parameters/MobilityLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MetroAreaInfoResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mobility/transit/nearby/{format}": { + "get": { + "x-publish": true, + "operationId": "Mobility_GetNearbyTransitPreview", + "description": "**Find Nearby Transit API**\n\n**Applies to**: S1 pricing tier.\n\nGet Nearby Transit service allows you to search public transit stops around a given location returning the transit object details. Service allows users to search for public transit stops within a given radius returning a set of stops with stop details. Additional information such as transit operator information is returned depending on the options selected. The returned information can be used for further processing such as requesting [real-time arrivals](https://aka.ms/AzureMapsMobilityRealTimeArrivals) for the stop or [transit stop details](https://aka.ms/AzureMapsMobilityTransitStop) such as main transit type of most lines stopping for a given public, active service alerts or main transport agency.", + "x-ms-examples": { + "NearbyTransit": { + "$ref": "./examples/GetNearbyTransit.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "$ref": "#/parameters/MetroId" + }, + { + "name": "query", + "description": "Location input from user. The applicable location query specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "in": "query", + "required": true, + "type": "string" + }, + { + "name": "limit", + "description": "Maximum number of responses that will be returned. Default is 3, minimum 1 and maximum 100. Sort order is based on distance from input location.", + "in": "query", + "required": false, + "type": "integer" + }, + { + "name": "radius", + "description": "Specifies the search area to constrain a search. The radius in meters to for the results to be constrained to the defined area. Default value is 30 meters, minimum 1 meter and maximum 5000 meters (5km).", + "in": "query", + "required": false, + "type": "integer" + }, + { + "name": "objectType", + "description": "The transit object type. By default, objectType is set to `stop`", + "in": "query", + "required": false, + "default": "stop", + "type": "string" + }, + { + "$ref": "#/parameters/MobilityLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NearbyTransitResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mobility/transit/line/{format}": { + "get": { + "x-publish": true, + "operationId": "Mobility_GetTransitLineInfoPreview", + "description": "**Transit Line Info API**\n\n**Applies to**: S1 pricing tier.\n\nYour scenario might require requesting transit line specific data such as stops and line geometry. Transit Line Info service allows you to request line group by line group id returning a line group comprised a set of lines. Additional information such as 24 hours static schedule, active alerts for the line group and line patterns is also available, depending on the options selected. Mobility services uses a parallel data model for public transit lines and line groups. Usually line group contains 2 lines, one going from A to B, and the other returning from B to A, both operating by the same Public Transport Agency having the same line number. We recommend you review our guidance [article](https://aka.ms/AMapsPublicTRansitConcepts) to understand the concepts of lines and line groups.", + "x-ms-examples": { + "TransitLineInfo": { + "$ref": "./examples/GetTransitLineInfo.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "$ref": "#/parameters/MetroId" + }, + { + "name": "query", + "description": "lineGroupId, for example,'666074'. Typically contains 2 lines having the same agency and line, one going from A to B, and the other from B to A.", + "in": "query", + "required": true, + "type": "string" + }, + { + "name": "detailType", + "description": "Specify additional details requested respective to the line group as a comma separated list. As a default service returns line basic info. Supported values are:\n * `alerts` - Return any active service alerts for the specified stop. Response provides brief information for disruption in service and all basic data associated with the alert.\n * `alertDetails` - Can only be used in conjunction with detailType=alerts.Return additional details associated with the active service alerts.\n * `lines` - Return transit lines that stops at the specified stop.\n * `stops` - Return list of stops the line group goes through.\n * `schedule` - Return a 24h static schedule for the specified line group from the current time of the day to the end of the current day.\n * `patterns` - Return list of patterns this group is comprised of. A pattern consists of a stop sequence and shape per line.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "alerts", + "alertDetails", + "lines", + "stops", + "schedule", + "patterns" + ], + "x-ms-enum": { + "name": "TransitLineDetailType", + "modelAsString": false, + "values": [ + { + "value": "alerts", + "description": "Return any active service alerts for the specified stop. Response provides brief information for disruption in service and all basic data associated with the alert." + }, + { + "value": "alertDetails", + "description": "Can only be used in conjunction with detailType=alerts.Return additional details associated with the active service alerts." + }, + { + "value": "lines", + "description": "Return transit lines that stops at the specified stop." + }, + { + "value": "stops", + "description": "Return list of stops the line group goes through." + }, + { + "value": "schedule", + "description": "Return a 24h static schedule for the specified line group from the current time of the day to the end of the current day." + }, + { + "value": "patterns", + "description": "Return list of patterns this group is comprised of. A pattern consists of a stop sequence and shape per line." + } + ] + } + } + }, + { + "$ref": "#/parameters/MobilityLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransitLineInfoResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mobility/transit/stop/{format}": { + "get": { + "x-publish": true, + "operationId": "Mobility_GetTransitStopInfoPreview", + "description": "**Transit Stop Info API**\n\n**Applies to**: S1 pricing tier.\n\nGet Transit Stop Info service allows you to request information for a given public transit stop. Basic information returned includes details such as main transit type of most lines stopping for a given public and main transport agency. Additional details such as stop lines and active service alerts for specified stop are also available, depending on the options selected.", + "x-ms-examples": { + "TransitStopInfo": { + "$ref": "./examples/GetTransitStopInfo.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "$ref": "#/parameters/MetroId" + }, + { + "name": "query", + "description": "The stopId or stopKey for which the user is requesting transit stop details.", + "in": "query", + "required": true, + "type": "string" + }, + { + "name": "queryType", + "description": "The type of the unique query parameter of the stop. By default queryType=stopId.", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "stopId", + "stopKey" + ], + "default": "stopId", + "x-ms-enum": { + "name": "TransitStopQueryType", + "modelAsString": false, + "values": [ + { + "value": "stopId", + "description": "The unique Azure Maps identifier for the respective public transit stop. When referring to public transit stops over time, it is recommended to use `stopId` since it will not change, as long as the physical stop exists" + }, + { + "value": "stopKey", + "description": "The GTFS stop Id. GTFS stop Ids are provided by the transit authority and are subject to change.
**Note**: When this value is used, the metroId parameter is required." + } + ] + }, + "x-ms-parameter-location": "method" + }, + { + "name": "detailType", + "description": "Specify additional details requested respective to the transit stop as a comma separated list. Supported values are:\n * `alerts` - Return any active service alerts for the specified stop. Response provides brief information for disruption in service and all basic data associated with the alert.\n * `alertDetails` - Can only be used in conjunction with detailType=alerts.Return additional details associated with the active service alerts.\n * `lines` - Return transit lines that stops at the specified stop.\n * `lineGroups` - Return line groups that stops at the specified stop.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "alerts", + "alertDetails", + "lines", + "lineGroups" + ], + "x-ms-enum": { + "name": "TransitStopDetailType", + "modelAsString": false, + "values": [ + { + "value": "alerts", + "description": "Return any active service alerts for the specified stop. Response provides brief information for disruption in service and all basic data associated with the alert." + }, + { + "value": "alertDetails", + "description": "Can only be used in conjunction with detailType=alerts.Return additional details associated with the active service alerts." + }, + { + "value": "lines", + "description": "Return transit lines that stops at the specified stop." + }, + { + "value": "lineGroups", + "description": "Return line groups that stops at the specified stop." + } + ] + } + } + }, + { + "$ref": "#/parameters/MobilityLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransitStopInfoResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mobility/transit/route/{format}": { + "get": { + "x-publish": true, + "operationId": "Mobility_GetTransitRoutePreview", + "description": "**Transit Route API**\n\n**Applies to**: S1 pricing tier.\n\nGet Transit Route API will allow trip planning returning the best possible route options between an origin and destination by using multi-modal search. Service provides a variety of travel modes, including walk, bike, and public transit. The API supports parameters to request one or multiple public transit types such as bus, tram and subway, and prefer a specific transit agency operating in the area. Also, service provides options to choose optimal route with least walk or transfers and specify arrival or departure times when user need to be at a specific destination by a certain time.", + "x-ms-examples": { + "TransitRoute": { + "$ref": "./examples/GetTransitRoute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "$ref": "#/parameters/MetroId" + }, + { + "name": "origin", + "description": "The origin of the route. By default originType=position, specified as a comma separated string composed by latitude followed by longitude, e.g. \"47.641268,-122.125679”.", + "in": "query", + "required": true, + "type": "string" + }, + { + "name": "originType", + "description": "The type of the origin. By default originType=position, specified as a comma separated string composed by latitude followed by longitude, e.g., \"47.641268,-122.125679”.", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "position", + "stopId", + "stopKey" + ], + "default": "position", + "x-ms-enum": { + "name": "OriginType", + "modelAsString": false, + "values": [ + { + "value": "position", + "description": "The origin of the route as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\"." + }, + { + "value": "stopId", + "description": "The unique Azure Maps identifier for the respective public transit stop. When referring to public transit stops over time, it is recommended to use `stopId` since it will not change, as long as the physical stop exists" + }, + { + "value": "stopKey", + "description": "The GTFS stop Id. GTFS stop Ids are provided by the transit authority and are subject to change.
**Note**: When this value is used, the metroId parameter is required." + } + ] + }, + "x-ms-parameter-location": "method" + }, + { + "name": "destination", + "description": "The destination of the route. By default the destinationType=position, specified as a comma separated string composed by latitude followed by longitude, e.g. \"47.641268,-122.125679”.", + "in": "query", + "required": true, + "type": "string" + }, + { + "name": "destinationType", + "description": "The type of the destination.", + "in": "query", + "required": false, + "type": "string", + "default": "position", + "enum": [ + "position", + "stopId", + "stopKey" + ], + "x-ms-enum": { + "name": "DestinationType", + "modelAsString": false, + "values": [ + { + "value": "position", + "description": "The destination of the route as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\"." + }, + { + "value": "stopId", + "description": "The unique Azure Maps identifier for the respective public transit stop. When referring to public transit stops over time, it is recommended to use `stopId` since it will not change, as long as the physical stop exists." + }, + { + "value": "stopKey", + "description": "The GTFS stop Id. GTFS stop Ids are provided by the transit authority and are subject to change.
**Note**: When this value is used, the metroId parameter is required." + } + ] + }, + "x-ms-parameter-location": "method" + }, + { + "name": "modeType", + "description": "The mode of travel for the requested route; as comma separated list. If not specified, all modes will be allowed. All modes might not be available in all metro areas. If valid trip is not found, empty result will be returned. Supported values are:\n * `walk` - Walk (pedestrian)\n * `bike` - Bike\n * `publicTransit` - Public transit", + "required": false, + "in": "query", + "type": "array", + "items": { + "type": "string", + "enum": [ + "walk", + "bike", + "publicTransit" + ], + "x-ms-enum": { + "name": "ModeType", + "modelAsString": false, + "values": [ + { + "value": "walk", + "description": "walk (pedestrian)" + }, + { + "value": "bike", + "description": "bike" + }, + { + "value": "publicTransit", + "description": "public transit" + } + ] + } + }, + "x-ms-parameter-location": "method" + }, + { + "name": "transitType", + "description": "Applicable only with modeType = publicTransit. Allow only a specific set of public transit types (as a comma separated list) to be returned for the route. Note that the requested transitType may not be available for the entire route. If not specified, all modes will be allowed. Supported values are:\n * `bus` - Bus\n * `cableCar` - Cable car\n * `ferry` - Ferry\n * `funicular` - Funicular\n * `gondola` - Gondola\n * `rail` - Rail\n * `tram` - Tram\n * `subway` - Subway/Metro", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "bus", + "cableCar", + "ferry", + "funicular", + "gondola", + "rail", + "tram", + "subway" + ], + "x-ms-enum": { + "name": "TransitTypeFilter", + "modelAsString": false, + "values": [ + { + "value": "bus", + "description": "bus" + }, + { + "value": "cableCar", + "description": "cableCar" + }, + { + "value": "ferry", + "description": "ferry" + }, + { + "value": "funicular", + "description": "funicular" + }, + { + "value": "gondola", + "description": "gondola" + }, + { + "value": "rail", + "description": "rail" + }, + { + "value": "tram", + "description": "tram" + }, + { + "value": "subway", + "description": "subway" + } + ] + } + }, + "x-ms-parameter-location": "method" + }, + { + "name": "agency", + "description": "Specifies whether to prefer routes from a specific set of agencies if possible; as a comma separated list. If valid trip isn’t found with the preferred agency, or only one with very long trips or with large number of transfers, itineraries with other agencies will be returned.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + } + }, + { + "name": "agencyType", + "description": "Specifies the agency identifier to request routes from preferred agencies. By default the agencyType=agencyId.", + "in": "query", + "required": false, + "type": "string", + "default": "agencyId", + "enum": [ + "agencyId", + "agencyKey", + "agencyName" + ], + "x-ms-enum": { + "name": "AgencyType", + "modelAsString": false, + "values": [ + { + "value": "agencyId", + "description": "The Id of the transit agency, e.g. '5872'" + }, + { + "value": "agencyKey", + "description": "The agency’s GTFS Id.
**Note**: When this value is used, the metroId parameter is required." + }, + { + "value": "agencyName", + "description": "The name of the transit agency, e.g. Metro Transit." + } + ] + }, + "x-ms-parameter-location": "method" + }, + { + "name": "time", + "description": "The time of departure or arrival in the local time in ISO format (2019-04-05T14:24:18-04:00). If timeType is not specified, it will be assumed to be 'departure' and time is the current local time at the origin point.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "timeType", + "description": "Specifies whether the time signifies departure time or arrival time. If not defined, default value is 'departure'.", + "in": "query", + "required": false, + "type": "string", + "default": "departure", + "enum": [ + "arrival", + "departure", + "last" + ], + "x-ms-enum": { + "name": "TimeType", + "modelAsString": false, + "values": [ + { + "value": "arrival", + "description": "arrival at the destination point. Requires that 'time' value must be in the future." + }, + { + "value": "departure", + "description": "Request departure at the destination point. Requires that 'time' value must be now or in the future." + }, + { + "value": "last", + "description": "Request the last lines for the day." + } + ] + } + }, + { + "name": "routeType", + "description": "The type of route requested. If not specified, 'optimal' will be used.", + "in": "query", + "required": false, + "type": "string", + "default": "optimal", + "enum": [ + "optimal", + "leastWalk", + "leastTransfers" + ], + "x-ms-enum": { + "name": "TransitRouteType", + "modelAsString": false, + "values": [ + { + "value": "optimal", + "description": "The best optimal route." + }, + { + "value": "leastWalk", + "description": "Route with least walk." + }, + { + "value": "leastTransfers", + "description": "Route with least transfers." + } + ] + } + }, + { + "name": "bikeType", + "description": "Bike type of the bike. Specifies which type of bikes will be used. Only private bikes are supported.", + "in": "query", + "required": false, + "type": "string", + "default": "privateBike" + }, + { + "$ref": "#/parameters/MobilityLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransitRouteResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mobility/transit/itinerary/{format}": { + "get": { + "x-publish": true, + "operationId": "Mobility_GetTransitItineraryPreview", + "description": "**Transit Itinerary API**\n\n**Applies to**: S1 pricing tier.\n\nReturns data according to an itinerary Id previously returned by [Transit Route API](https://aka.ms/AzureMapsMobilityTransitRoute). The basic info contains data as to the various legs comprising the itinerary, including the locations, public transit lines, start and end times. User can request additional routing information such as the shape of the itinerary and detailed itinerary schedules is also available, depending on the options selected. An itinerary is available up to 24 hours following a search request.", + "x-ms-examples": { + "TransitItinerary": { + "$ref": "./examples/GetTransitItinerary.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "The unique id (itineraryId) of an itinerary previously returned by [Transit Route API](https://aka.ms/AzureMapsMobilityTransitRoute).", + "in": "query", + "required": true, + "type": "string" + }, + { + "name": "detailType", + "description": "Specify additional details returned in the transit route itinerary response, as a comma separated list. Supported values are:\n * `geometry` - Shape of an in GeoJSON format. For public transit legs will return also the stops that the leg passes through. For walk and bike legs, will return also the turn-by-turn navigation data. \n * `schedule` - Static schedule data as to all departures of Public Transit legs from the current time of the day to the end of the current day.", + "required": false, + "in": "query", + "type": "array", + "items": { + "type": "string", + "enum": [ + "geometry", + "schedule" + ], + "x-ms-enum": { + "name": "TransitItineraryDetailType", + "modelAsString": false, + "values": [ + { + "value": "geometry", + "description": "Shape of an in GeoJSON format. For public transit legs will return also the stops that the leg passes through. For walk and bike legs, will return also the turn-by-turn navigation data." + }, + { + "value": "schedule", + "description": "Static schedule data as to all departures of Public Transit legs from the current time of the day to the end of the current day." + } + ] + } + }, + "x-ms-parameter-location": "method" + }, + { + "$ref": "#/parameters/MobilityLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransitItineraryResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/mobility/realtime/arrivals/{format}": { + "get": { + "x-publish": true, + "operationId": "Mobility_GetRealTimeArrivalsPreview", + "description": "**Real-time Arrivals API**\n\n**Applies to**: S1 pricing tier.\n\nGet Real Time Arrivals API returns for a given a stop, line or location the requested number of real-time arrivals. Endpoint support different modes to request real-time arrivals such as number of live arrivals for all lines arriving at the specified stop or all arrivals of a line to stops near the user’s location. The API supports parameters to request one or multiple public transit types such as bus, tram and subway, maximum number if arrivals, and prefer a specific transit agency operating in the area. In some cases real-time arrivals may not be available, for example, if arrival is too far in the future or transit vehicle does not have capability to share the real-time location. This is symbolized in a scheduleType field present in all responses.", + "x-ms-examples": { + "RealTimeArrivals": { + "$ref": "./examples/GetRealTimeArrivals.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "$ref": "#/parameters/MetroId" + }, + { + "name": "query", + "description": "Stop, line or location identifier.", + "in": "query", + "required": true, + "type": "string" + }, + { + "name": "queryType", + "description": "The type of the query parameter. Defines the mode of the request. Only one mode per request is supported. By default queryType is set to be ‘stops’ returning the requested number of Live Arrivals for all lines arriving at the specified stop.", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "stops", + "line", + "lineAndStop", + "position" + ], + "default": "stops", + "x-ms-enum": { + "name": "RealTimeArrivalsQueryType", + "modelAsString": false, + "values": [ + { + "value": "stops", + "description": "One or multiple stops as a comma separated list. Returns the requested number of live arrivals for all lines arriving at the specified stop. Defined by parameter stopQueryType." + }, + { + "value": "line", + "description": "Returns the next live arrival times for each stop within the specified line. lineId, for example, '3785742'." + }, + { + "value": "lineAndStop", + "description": "Returns up to three next Live Arrival times for a given line at a given stop. Comma-separated list including lineId and stop identifier, for example, 1228526,14014071 (lineId,stopId)." + }, + { + "value": "position", + "description": "Returns arrivals of a line to stops near the user’s location. The applicable location query specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\"." + } + ] + }, + "x-ms-parameter-location": "method" + }, + { + "name": "stopQueryType", + "description": "The type of the unique query parameter of the stop. By default stopQueryType=stopId. This parameter can only be used in conjunction with queryType=stops or queryType=lineAndStop.", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "stopId", + "stopKey" + ], + "default": "stopId", + "x-ms-enum": { + "name": "StopQueryType", + "modelAsString": false, + "values": [ + { + "value": "stopId", + "description": "The unique Azure Maps identifier for the respective public transit stop. When referring to public transit stops over time, it is recommended to use `stopId` since it will not change, as long as the physical stop exists." + }, + { + "value": "stopKey", + "description": "The GTFS stop Id. GTFS stop Ids are provided by the transit authority and are subject to change.
**Note**: When this value is used, the metroId parameter is required." + } + ] + }, + "x-ms-parameter-location": "method" + }, + { + "name": "limit", + "description": "The maximum arrivals to return. If not specified, the system default will be used. For stops max number of arrivals per stop. For lines max arrivals per stop on the line. For everything else max arrivals overall.", + "in": "query", + "required": false, + "type": "integer" + }, + { + "name": "maxMinutesInFuture", + "description": "The maximum time (in minutes) in the future to return arrivals for. If not specified, the system default (30 minutes) will be used. The minimum value is 0 and maximum value is 60 minutes.", + "required": false, + "type": "integer", + "in": "query" + }, + { + "name": "transitType", + "description": "Type of public transit user is requesting respective transit stop, as a comma separated list. For example, transitType=Bus,Subway. If not specified, all will be allowed. This parameter can only be used in conjunction with queryType=stops. Supported values are:\n * `bus` - Bus\n * `cableCar` - Cable car\n * `ferry` - Ferry\n * `funicular` - Funicular\n * `gondola` - Gondola\n * `rail` - Rail\n * `tram` - Tram\n * `subway` - Subway/Metro", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "bus", + "cableCar", + "ferry", + "funicular", + "gondola", + "rail", + "tram", + "subway" + ], + "x-ms-enum": { + "name": "TransitTypeFilter", + "modelAsString": false, + "values": [ + { + "value": "bus", + "description": "bus" + }, + { + "value": "cableCar", + "description": "cableCar" + }, + { + "value": "ferry", + "description": "ferry" + }, + { + "value": "funicular", + "description": "funicular" + }, + { + "value": "gondola", + "description": "gondola" + }, + { + "value": "rail", + "description": "rail" + }, + { + "value": "tram", + "description": "tram" + }, + { + "value": "subway", + "description": "subway" + } + ] + } + }, + "x-ms-parameter-location": "method" + }, + { + "name": "agency", + "description": "In case you prefer routes from a specific set of agencies to be returned. Specified as a comma separated string.", + "in": "query", + "required": false, + "type": "array", + "items": { + "type": "string" + } + }, + { + "name": "agencyType", + "description": "Specifies the agency identifier to request routes from a specific set of agencies to be returned. By default the agencyType=agencyId.", + "in": "query", + "required": false, + "type": "string", + "default": "agencyId", + "enum": [ + "agencyId", + "agencyKey", + "agencyName" + ], + "x-ms-enum": { + "name": "AgencyType", + "modelAsString": false, + "values": [ + { + "value": "agencyId", + "description": "The Id of the transit agency, e.g. '5872'" + }, + { + "value": "agencyKey", + "description": "The agency’s GTFS Id.
**Note**: When this value is used, the metroId parameter is required." + }, + { + "value": "agencyName", + "description": "The name of the transit agency, e.g. Metro Transit." + } + ] + }, + "x-ms-parameter-location": "method" + }, + { + "name": "timeoutInSeconds", + "description": "Time in seconds within which if the provider doesn’t respond, end point will return static data.", + "in": "query", + "required": false, + "type": "integer" + }, + { + "$ref": "#/parameters/MobilityLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RealTimeArrivalsResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "Coordinate": { + "description": "A location represented as a latitude and longitude.", + "type": "object", + "properties": { + "latitude": { + "description": "Latitude property", + "type": "number", + "format": "double", + "readOnly": true + }, + "longitude": { + "description": "Longitude property", + "type": "number", + "format": "double", + "readOnly": true + } + } + }, + "GeoJSONGeometry": { + "description": "A valid `GeoJSON` geometry object. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1) for details.", + "type": "object", + "discriminator": "type", + "required": [ + "type" + ], + "properties": { + "type": { + "description": "Specifies the `GeoJSON` geometry type. Must be one of the seven valid GeoJSON geometry types - Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon and GeometryCollection.", + "type": "string", + "enum": [ + "Point", + "MultiPoint", + "LineString", + "MultiLineString", + "Polygon", + "MultiPolygon", + "GeometryCollection" + ], + "x-ms-enum": { + "name": "GeoJSONGeometryType", + "modelAsString": false, + "values": [ + { + "value": "Point", + "description": "`GeoJSON Point` geometry." + }, + { + "value": "MultiPoint", + "description": "`GeoJSON MultiPoint` geometry." + }, + { + "value": "LineString", + "description": "`GeoJSON LineString` geometry." + }, + { + "value": "MultiLineString", + "description": "`GeoJSON MultiLineString` geometry." + }, + { + "value": "Polygon", + "description": "`GeoJSON Polygon` geometry." + }, + { + "value": "MultiPolygon", + "description": "`GeoJSON MultiPolygon` geometry." + }, + { + "value": "GeometryCollection", + "description": "`GeoJSON GeometryCollection` geometry." + } + ] + } + } + } + }, + "Polygon": { + "description": "A valid `GeoJSON Polygon` geometry type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.6) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the object. Value should always be equal to \"Polygon\".", + "type": "string" + }, + "coordinates": { + "description": "Coordinates for the `Polygon` geometry type.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONLinearRing" + } + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "LineString": { + "description": "A valid `GeoJSON LineString` geometry type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.4) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the geometry. Value should always be equal to \"LineString\".", + "type": "string" + }, + "coordinates": { + "description": "Coordinates for the `LineString` geometry.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONPosition" + } + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "GeoJSONLinearRing": { + "description": "Though a linear ring is not explicitly represented as a GeoJSON geometry type, it helps in defining the polygon as an array of linear rings. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.6) for details.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONPosition" + } + }, + "GeoJSONPosition": { + "description": "A valid `GeoJSON Position` geometry type. A `Position` is an array of numbers with two or more elements. The first two elements are _longitude_ and _latitude_, precisely in that order. _Altitude/Elevation_ is an optional third element. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.1) for details.", + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "MetroAreaResponse": { + "description": "This object is returned from a successful Get Metro Area call", + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/MetroAreaResult" + } + } + } + }, + "MetroAreaInfoResponse": { + "description": "This object is returned from a successful Metro Area call.", + "type": "object", + "properties": { + "metroName": { + "type": "string", + "description": "The name of the metro area." + }, + "transitTypes": { + "type": "array", + "items": { + "$ref": "#/definitions/TransitTypeResult" + } + }, + "agencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Agency" + } + }, + "alerts": { + "type": "array", + "items": { + "$ref": "#/definitions/Alert" + } + } + } + }, + "NearbyTransitResponse": { + "description": "This object is returned from a successful Get Nearby Transit call", + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/TransitObjectResult" + } + } + } + }, + "TransitStopInfoResponse": { + "description": "This object is returned from a successful Get Transit Stop Info call", + "type": "object", + "properties": { + "stop": { + "$ref": "#/definitions/Stop" + }, + "lines": { + "$ref": "#/definitions/Lines" + }, + "lineGroups": { + "$ref": "#/definitions/LineGroups" + }, + "alerts": { + "$ref": "#/definitions/Alerts" + } + } + }, + "TransitRouteResponse": { + "description": "This object is returned from a successful Get Transit Stop Info call", + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/ItineraryResult" + } + } + } + }, + "TransitItineraryResponse": { + "description": "This object is returned from a successful Get Transit Itinerary call", + "type": "object", + "properties": { + "departureTime": { + "description": "The date and time of departure from the origin point in ISO 8601 format, e.g. 1996-12-19T16:39:57-08:00.", + "type": "string" + }, + "arrivalTime": { + "description": "The date and time of arrival at the destination point in ISO 8601 format, e.g. 1996-12-19T19:39:57-08:00.", + "type": "string" + }, + "legs": { + "$ref": "#/definitions/ItinerarySummary" + } + } + }, + "TransitLineInfoResponse": { + "description": "This object is returned from a successful Transit Line Info call.", + "type": "object", + "properties": { + "lineGroup": { + "description": "Groups together all lines that are logically part of the same group. Typically contains 2 lines having the same agency and line, one going from A to B, and the other from B to A.", + "$ref": "#/definitions/LineGroup" + }, + "lines": { + "description": "The line group’s basic info and list of the lines.", + "$ref": "#/definitions/Lines" + }, + "stops": { + "description": "List of stops the line group goes through.", + "type": "array", + "items": { + "$ref": "#/definitions/Stop" + } + }, + "patterns": { + "description": "List of patterns this group is comprised of. A pattern consists of a stop sequence and shape per a line in GeoJSON format.", + "type": "array", + "items": { + "$ref": "#/definitions/Pattern" + } + }, + "schedule": { + "description": "Line schedule for the current 24h. May be null in case no schedule exists for the current time.", + "$ref": "#/definitions/LineArrival" + } + } + }, + "RealTimeArrivalsResponse": { + "description": "This object is returned from a successful Get Real Time Arrival Info call.", + "type": "object", + "properties": { + "results": { + "description": "Results array. Contains results related details.", + "type": "array", + "items": { + "$ref": "#/definitions/RealTimeArrivalResult" + } + } + } + }, + "MetroAreaResult": { + "description": "Details of the metro area.", + "type": "object", + "properties": { + "metroId": { + "description": "The metro area's Id for use with other API calls.", + "type": "integer" + }, + "metroName": { + "description": "The main display name of the metro.", + "type": "string" + }, + "geometry": { + "$ref": "#/definitions/Polygon" + }, + "viewport": { + "$ref": "#/definitions/ResultViewport" + } + } + }, + "ResultViewport": { + "description": "The viewport that covers the result represented by the top-left and bottom-right coordinates of the viewport.", + "type": "object", + "properties": { + "topLeftPoint": { + "$ref": "#/definitions/Coordinate" + }, + "btmRightPoint": { + "$ref": "#/definitions/Coordinate" + } + } + }, + "TransitObjectResult": { + "type": "object", + "properties": { + "id": { + "description": "The unique identifier (stopID) for the returned public transit stop. When referring to public transit stops over time, it is recommended to use `stopId` since it will not change, as long as the physical stop exists.", + "type": "string" + }, + "type": { + "description": "The type of object found as a result of the query.", + "type": "string" + }, + "objectDetails": { + "description": "The object specific details.", + "type": "object" + }, + "position": { + "description": "The transit object's position.", + "$ref": "#/definitions/Coordinate" + }, + "viewport": { + "$ref": "#/definitions/ResultViewport" + } + } + }, + "Stop": { + "description": "The stop's basic info", + "type": "object", + "properties": { + "stopId": { + "description": "The unique Azure Maps identifier for the respective public transit stop. When referring to public transit stops over time, it is recommended to use `stopId` since it will not change, as long as the physical stop exists.", + "type": "string" + }, + "stopKey": { + "description": "The GTFS stop Id. GTFS stop Ids are provided by the transit authority and subject to change.", + "type": "string" + }, + "stopName": { + "description": "The name of the stop.", + "type": "string" + }, + "stopCode": { + "description": "The stop code displayed at the physical stop. Returned if available.", + "type": "string" + }, + "position": { + "description": "The Stop's location, latitude and longitude.", + "$ref": "#/definitions/Coordinate" + }, + "mainTransitType": { + "description": "The transit type of most lines stopping at this stop. One of Tram, Subway, Rail, Bus, Ferry, CableCar, Gondola, Funicular", + "type": "string" + }, + "mainAgencyId": { + "description": "The Id of the transit agency of most lines stopping at this stop. For example '5872'.", + "type": "string" + }, + "mainAgencyName": { + "description": "The name of the agency of most lines stopping at this stop, for example, 'Metro Transit'.", + "type": "string" + } + } + }, + "Lines": { + "description": "A list of stop lines", + "type": "array", + "items": { + "$ref": "#/definitions/Line" + } + }, + "Line": { + "description": "A stop line", + "type": "object", + "properties": { + "lineId": { + "description": "Line Id.", + "type": "string" + }, + "lineGroupId": { + "description": "Line group Id. Typically contains 2 lines having the same agency and line, one going from A to B, and the other from B to A.", + "type": "string" + }, + "direction": { + "description": "Line direction. Possible values 'forward' or 'backward'.", + "type": "string" + }, + "agencyId": { + "description": "The Id of the transit agency, for example, '5872'.", + "type": "string" + }, + "agencyName": { + "description": "The name of the transit agency, for example, 'NJ Transit'.", + "type": "string" + }, + "lineNumber": { + "description": "The transit line number.", + "type": "string" + }, + "origin": { + "description": "The line’s origin, will be present according to metro settings.", + "type": "string" + }, + "lineDestination": { + "description": "The line’s user displayable destination.", + "type": "string" + }, + "mostFrequentPatternId": { + "description": "Most common pattern for the line.", + "type": "string" + }, + "transitType": { + "description": "The public transit type of the line.", + "$ref": "#/definitions/TransitType" + } + } + }, + "LineGroups": { + "description": "A list of line groups", + "type": "array", + "items": { + "$ref": "#/definitions/LineGroup" + } + }, + "LineGroup": { + "description": "A line group", + "type": "object", + "properties": { + "lineGroupId": { + "description": "Line group Id. Typically contains 2 lines having the same agency and line, one going from A to B, and the other from B to A.", + "type": "string" + }, + "agencyId": { + "description": "The Id of the transit agency, for example, '5872'.", + "type": "string" + }, + "agencyName": { + "description": "The name of the transit agency, e.g. Metro Transit.", + "type": "string" + }, + "lineNumber": { + "description": "The transit line number.", + "type": "string" + }, + "caption1": { + "description": "A descriptive string. In case caption2 is null, should be used alone as a subtitle to the line number (i.e. Circular). In case caption2 has a value present, should be used in conjunction with it (i.e. Rome ↔ Napoli).", + "type": "string" + }, + "caption2": { + "description": "A descriptive string.", + "type": "string" + }, + "color": { + "description": "HEX color for the line.", + "type": "string" + }, + "transitType": { + "description": "The public transit type of the line.", + "$ref": "#/definitions/TransitType" + } + } + }, + "Alerts": { + "description": "A list of stop alerts", + "type": "array", + "items": { + "$ref": "#/definitions/Alert" + } + }, + "Alert": { + "description": "Basic information associated with the active alert.", + "type": "object", + "properties": { + "alertSummary": { + "description": "Text summarizing the alert.", + "type": "string" + }, + "publicationDate": { + "description": "The date and time in ISO 8601 format, e.g. 2019-04-05T14:24:18-04:00.", + "type": "string", + "format": "date-time" + }, + "category": { + "description": "The category of the alert. One of None, Regular, Info, Modified, Critical.", + "type": "string" + }, + "alertLevel": { + "description": "The level at which the respective alert extents to. One of Metro, Agency, Line, Stop.", + "type": "string" + }, + "details": { + "$ref": "#/definitions/AlertDetail" + } + } + }, + "AlertDetail": { + "description": "A list of alert details.", + "type": "object", + "properties": { + "agencyId": { + "description": "The Id of the relevant transit agency, for example, '5872'.", + "type": "string" + }, + "agencyName": { + "description": "Name of the relevant transit agency, e.g. Metro Transit.", + "type": "string" + }, + "title": { + "description": "The title of the alert.", + "type": "string" + }, + "description": { + "description": "A short description of the alert.", + "$ref": "#/definitions/AlertDescription" + }, + "activeFrom": { + "description": "The start time of the alert in the local time in ISO format (2019-04-05T14:24:18-04:00).", + "type": "string", + "format": "date-time" + }, + "activeTo": { + "description": "The estimated end time of the alert in the local time in ISO format (2019-04-05T14:24:18-04:00).", + "type": "string", + "format": "date-time" + }, + "effect": { + "description": "Service Alert effect - one of SA_NO_SERVICE, SA_REDUCED_SERVICE, SA_SIGNIFICANT_DELAYS, SA_DETOUR, SA_ADDITIONAL_SERVICE, SA_MODIFIED_SERVICE, SA_OTHER_EFFECT, SA_STOP_MOVED, SA_GOOD_SERVICE, SA_SLEEPING, SA_OTHER_EFFECT", + "type": "string" + } + } + }, + "ItineraryResult": { + "type": "object", + "properties": { + "itineraryId": { + "description": "A unique identifier of the returned itinerary.", + "type": "string" + }, + "departureTime": { + "description": "The date and time of departure from the origin point in ISO 8601 format, e.g. 1996-12-19T16:39:57-08:00.", + "type": "string", + "format": "date-time" + }, + "arrivalTime": { + "description": "The date and time of arrival at the destination point in ISO 8601 format, e.g. 1996-12-19T19:39:57-08:00.", + "type": "string", + "format": "date-time" + }, + "travelTimeInSeconds": { + "description": "Estimated travel time in seconds.", + "type": "integer" + }, + "numberOfLegs": { + "description": "Number of legs.", + "type": "integer" + }, + "legs": { + "description": "An array summarizing the legs of this itinerary.", + "$ref": "#/definitions/RouteItinerarySummary" + } + } + }, + "RouteItinerarySummary": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteItineraryLeg" + } + }, + "RouteItineraryLeg": { + "type": "object", + "properties": { + "legType": { + "description": "The travel mode of the leg.", + "$ref": "#/definitions/LegType" + }, + "legStartTime": { + "description": "Start time for the leg in ISO 8601 format, e.g. 1996-12-19T19:39:57-08:00.", + "type": "string" + }, + "legEndTime": { + "description": "End time for the leg in ISO 8601 format, e.g. 1996-12-19T19:39:57-08:00.", + "type": "string" + }, + "caption": { + "description": "For Public Transit legs the caption of the line serving the leg, for example, line number.", + "type": "string" + }, + "lengthInMeters": { + "description": "The total distance of the leg in meters.", + "type": "integer" + } + } + }, + "ItinerarySummary": { + "description": "An array summarizing the legs of this itinerary.", + "type": "array", + "items": { + "$ref": "#/definitions/Leg" + } + }, + "Leg": { + "type": "object", + "properties": { + "legType": { + "description": "The travel mode of the leg.", + "$ref": "#/definitions/LegType" + }, + "legStartTime": { + "description": "Start time for the leg.", + "type": "string" + }, + "legEndTime": { + "description": "End time for the leg.", + "type": "string" + }, + "steps": { + "description": "In case of walk or bike leg, the directions.", + "type": "array", + "items": { + "$ref": "#/definitions/Step" + } + }, + "origin": { + "description": "The walk/bike leg’s origin.", + "$ref": "#/definitions/LegPoint" + }, + "destination": { + "description": "The walk/bike leg’s destination.", + "$ref": "#/definitions/LegPoint" + }, + "geometry": { + "$ref": "#/definitions/LineString" + }, + "lineGroup": { + "description": "In case of a public transit leg, the line group serving this leg.", + "$ref": "#/definitions/LineGroup" + }, + "line": { + "description": "In case of a public transit leg, the line serving this leg.", + "$ref": "#/definitions/Line" + }, + "stops": { + "description": "List of stops comprising the line’s route within the leg (e.g. the stops the leg passes through).", + "$ref": "#/definitions/Stops" + }, + "departures": { + "description": "Relevant for Public Transit and Wait legs only", + "$ref": "#/definitions/Departures" + }, + "waitOnVehicle": { + "description": "Indicates whether it’s necessary to wait for the next leg on the same vehicle (i.e. the bus will only change its line number).", + "type": "string" + } + } + }, + "LegType": { + "type": "string", + "enum": [ + "Walk", + "Bicycle", + "Tram", + "Subway", + "Rail", + "Bus", + "Ferry", + "Cable", + "Gondola", + "Funicular", + "PathWayWalk", + "Wait", + "WaitOnVehicle" + ], + "x-ms-enum": { + "name": "LegType", + "modelAsString": false, + "values": [ + { + "value": "Walk", + "description": "Pedestrian walk" + }, + { + "value": "Bicycle", + "description": "Bicycle" + }, + { + "value": "Tram", + "description": "Tram" + }, + { + "value": "Subway", + "description": "Subway" + }, + { + "value": "Rail", + "description": "Rail" + }, + { + "value": "Bus", + "description": "Bus" + }, + { + "value": "Ferry", + "description": "Ferry" + }, + { + "value": "Cable", + "description": "Cable Car" + }, + { + "value": "Gondola", + "description": "Gondola" + }, + { + "value": "Funicular", + "description": "Funicular" + }, + { + "value": "PathWayWalk", + "description": "A Leg describing a walk within a compound, e.g. Central Station" + }, + { + "value": "Wait", + "description": "A Leg describing a wait for the next public transit leg" + }, + { + "value": "WaitOnVehicle", + "description": "It’s necessary to wait for the next leg on the same vehicle (i.e. the bus will only change its line number)" + } + ] + } + }, + "LegPoint": { + "type": "object", + "properties": { + "position": { + "$ref": "#/definitions/Coordinate" + } + } + }, + "Stops": { + "type": "array", + "items": { + "$ref": "#/definitions/Stop" + } + }, + "Step": { + "type": "object", + "properties": { + "direction": { + "description": "The walking direction associated with this step.", + "$ref": "#/definitions/Direction" + }, + "streetName": { + "description": "The name of the street in which this step takes place.", + "type": "string" + } + } + }, + "Direction": { + "description": "The walking directions guidance.", + "type": "object", + "properties": { + "relativeDirection": { + "description": "The relative walking direction associated with applicable step.", + "type": "string", + "enum": [ + "depart", + "hardLeft", + "left", + "slightlyLeft", + "continue", + "slightlyRight", + "right", + "hardRight", + "circleClockwise", + "circleCounterclockwise", + "elevator", + "uturnLeft", + "uturnRight" + ], + "x-ms-enum": { + "name": "RelativeDirection", + "modelAsString": false, + "values": [ + { + "value": "depart", + "description": "Leave" + }, + { + "value": "hardLeft", + "description": "Turn sharp left." + }, + { + "value": "left", + "description": "Turn left." + }, + { + "value": "slightlyLeft", + "description": "Turn slightly left." + }, + { + "value": "continue", + "description": "Keep going." + }, + { + "value": "slightlyRight", + "description": "Turn slightly right." + }, + { + "value": "right", + "description": "Turn right." + }, + { + "value": "hardRight", + "description": "Turn sharp right." + }, + { + "value": "circleClockwise", + "description": "Circle clockwise." + }, + { + "value": "circleCounterclockwise", + "description": "Circle counter clockwise." + }, + { + "value": "elevator", + "description": "Take the elevator." + }, + { + "value": "uturnLeft", + "description": "Make a U-turn left." + }, + { + "value": "uturnRight", + "description": "Make a U-turn right." + } + ] + } + }, + "absoluteDirection": { + "description": "The absolute walking direction associated with this step.", + "type": "string", + "enum": [ + "north", + "northeast", + "east", + "southeast", + "south", + "southwest", + "west", + "northwest" + ], + "x-ms-enum": { + "name": "AbsoluteDirection", + "modelAsString": false, + "values": [ + { + "value": "north", + "description": "North" + }, + { + "value": "northeast", + "description": "NorthEast" + }, + { + "value": "east", + "description": "East" + }, + { + "value": "southeast", + "description": "SouthEast" + }, + { + "value": "south", + "description": "South" + }, + { + "value": "southwest", + "description": "SouthWest" + }, + { + "value": "west", + "description": "West" + }, + { + "value": "northwest", + "description": "NorthWest" + } + ] + } + } + } + }, + "Departures": { + "type": "array", + "items": { + "$ref": "#/definitions/LineArrival" + } + }, + "LineArrival": { + "type": "object", + "properties": { + "lineId": { + "description": "Line Id.", + "type": "string" + }, + "stopId": { + "description": "The unique Azure Maps identifier for the respective public transit stop. When referring to public transit stops over time, it is recommended to use `stopId` since it will not change, as long as the physical stop exists.", + "type": "string" + }, + "scheduleTime": { + "description": "The date and time of departure from the stop in ISO 8601 format, e.g. 1996-12-19T19:39:57-08:00.", + "type": "string", + "format": "date-time" + }, + "scheduleType": { + "description": "Whether the result is based on real-time or static data.", + "$ref": "#/definitions/ScheduleType" + } + } + }, + "Pattern": { + "type": "object", + "description": "Stop-shape-segments of the trip pattern, which are an ordered list of the stops and the shapes connecting them.", + "properties": { + "patternId": { + "description": "Pattern Id, for example, '3267995'.", + "type": "string" + }, + "lineId": { + "description": "Line Id.", + "type": "string" + }, + "stopIds": { + "description": "Stops the line goes through.", + "type": "array", + "items": { + "type": "string" + } + }, + "geometry": { + "description": "Stop sequence and shape per a line in GeoJSON format.", + "$ref": "#/definitions/LineString" + } + } + }, + "TransitTypeResult": { + "type": "object", + "properties": { + "transitType": { + "description": "Supported public transit type.", + "$ref": "#/definitions/TransitType" + }, + "captionOverride": { + "description": "For metro areas in which local name is different than the GTFS supported transit type, original name is returned.", + "type": "string" + } + } + }, + "Agency": { + "type": "object", + "description": "Details of the agency.", + "properties": { + "agencyId": { + "description": "The Id of the relevant transit agency, for example, '5872'", + "type": "string" + }, + "agencyKey": { + "description": "The agency’s GTFS Id.", + "type": "string" + }, + "agencyName": { + "description": "Name of the relevant transit agency, e.g. Metro Transit.", + "type": "string" + }, + "transitType": { + "description": "Supported public transit type. One of Tram, Subway, Rail, Bus, Ferry, CableCar, Gondola, Funicular.", + "$ref": "#/definitions/TransitTypeResult" + } + } + }, + "TransitType": { + "type": "string", + "enum": [ + "Bus", + "CableCar", + "Ferry", + "Funicular", + "Gondola", + "Rail", + "Tram", + "Subway" + ], + "x-ms-enum": { + "name": "TransitType", + "modelAsString": false, + "values": [ + { + "value": "Bus", + "description": "bus" + }, + { + "value": "CableCar", + "description": "cableCar" + }, + { + "value": "Ferry", + "description": "ferry" + }, + { + "value": "Funicular", + "description": "funicular" + }, + { + "value": "Gondola", + "description": "gondola" + }, + { + "value": "Rail", + "description": "rail" + }, + { + "value": "Tram", + "description": "tram" + }, + { + "value": "Subway", + "description": "subway" + } + ] + } + }, + "AlertDescription": { + "type": "object", + "properties": { + "data": { + "description": "Description of the alert.", + "type": "string" + }, + "format": { + "description": "Format of the alert description.", + "type": "string" + }, + "sourceUrl": { + "description": "Source URL.", + "type": "string" + } + } + }, + "RealTimeArrivalResult": { + "description": "Contains real-time arrival related details.", + "type": "object", + "properties": { + "arrivalMinutes": { + "description": "The estimated time of arrival in minutes.", + "type": "integer" + }, + "scheduleType": { + "description": "Whether the result is based on real-time or static data.", + "$ref": "#/definitions/ScheduleType" + }, + "patternId": { + "description": "The pattern Id.", + "type": "string" + }, + "line": { + "description": "The public transit type of the line.", + "$ref": "#/definitions/Line" + }, + "stop": { + "description": "Object for the given stop.", + "$ref": "#/definitions/Stop" + } + } + }, + "ScheduleType": { + "description": "Whether the result is based on real-time or static data.", + "type": "string", + "enum": [ + "scheduledTime", + "realTime" + ], + "x-ms-enum": { + "name": "ScheduleType", + "modelAsString": false, + "values": [ + { + "value": "scheduledTime", + "description": "Returned when estimated time of arrival is based on real-time data." + }, + { + "value": "realTime", + "description": "Returned when estimated time of arrival is based on static data." + } + ] + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightCaption.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightCaption.json new file mode 100644 index 000000000000..d6e9b47100f2 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightCaption.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "formatVersion": "0.0.1", + "copyrightsCaption": "© 1992 - 2017 TomTom." + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightForTile.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightForTile.json new file mode 100644 index 000000000000..ebbf26fccc88 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightForTile.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "zoom": 6, + "x": 9, + "y": 22, + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "formatVersion": "0.0.1", + "generalCopyrights": [ + "© 1992 - 2018 TomTom. All rights reserved. This material is proprietary and the subject of copyright protection, database right protection and other intellectual property rights owned by TomTom or its suppliers. The use of this material is subject to the terms of a license agreement. Any unauthorized copying or disclosure of this material will lead to criminal and civil liabilities.", + "Data Source © 2018 TomTom", + "based on" + ], + "regions": [ + { + "copyrights": [ + "© 2006 – 2018 TomTom. All rights reserved. This material is proprietary and the subject of copyright protection and other intellectual property rights owned or licensed to TomTom. The product includes information copied with permission from Canadian authorities, including © Canada Post Corporation and Department of Natural Resources Canada, All rights reserved. The use of this material is subject to the terms of a License Agreement. You will be held liable for any unauthorized copying or disclosure of this material. Adapted from Statistics Canada: Boundary Files, 2016 Census; Road Network File, 2016; and Census Population and Dwelling Count Highlight Tables, 2016 Census. This does not constitute an endorsement by Statistics Canada of this product", + "The following copyright notice applies to the use of Administrative Area: © 2006 – 2018 TomTom. All rights reserved. Adapted from Statistics Canada: Boundary Files, 2016 Census: Census Population and Dwelling Count Highlight Tables, 2016. This does not constitute an endorsement by Statistics Canada of this product.", + "The following copyright notice applies to the use of Post- FSA layer and 6-digit layer: © 2006 – 2018 TomTom. All rights reserved. This material is proprietary and the subject of copyright protection and other intellectual property rights owned or licensed to TomTom. The product includes information copied with permission from Canadian authorities, including © Canada Post Corporation, All rights reserved. The use of this material is subject to the terms of a License Agreement. You will be held liable for any unauthorized copying or disclosure of this material", + "The following copyright notice applies to the use of Points of Interest: © 2006 – 2018 TomTom. All rights reserved. Portions of the POI database contained in Points of Interest North America have been provided by Neustar Localeze", + "The following copyright notice applies to the use of Telecommunications: © 2017 Pitney Bowes. All rights reserved. In addition, for the following product layers Wire Center Boundaries, ILEC Boundaries, and Rate Center Boundaries, the following also applies: This product contains information and/or data of Telcordia Technologies, Inc. (Telcordia) licensed to be included herein.", + "The following copyright notice applies to the use of TomTom Traffic: Portions of the data have been provided by Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. © 2017. Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. All rights reserved.", + "This product contains address point data made available under the city of Vancouver’s Open Data framework as documented on August 6, 2012 in: vancouver.ca/open-government-licence Contains public sector Datasets made available under the City of Toronto's Open Data Licence v2.0. This is specified in their terms available here: http://www1.toronto.ca/wps/portal/contentonly?vgnextoid=4a37e03bb8d1e310VgnVCM10000071d60f89RCRD", + "Contains information licensed under the Open Government Licence – Strathcona County. For specifics, please reference: https://data.strathcona.ca/licence", + "Contains information licensed under the Open Government Licence – County of Grande Prairie. For specifics, please reference: http://www.countygp.ab.ca/EN/main/community/maps-gis/open-data/open-data-licence.html", + "Contains information licensed under the Open Government Licence – Canada. For specifics, please reference: http://open.canada.ca/en/open-government-licence-canada", + "Contains information licensed under the Calgary Regional Partnership Open Data Licence. For specifics, please reference: http://calgaryregion.ca/dam/Website/reports/General/GIS/Public-documents/Calgary-Regional-Partnership-Open-Data-Licence/Calgary%20Regional%20Partnership%20Open%20Data%20Licence.pdf Contains information licensed under the Open Government Licence – Banff. For specifics, please reference: http://www.banffopendata.ca/Home/About", + "Contains information licensed under the Open Data License – City of Grande Prairie. For specifics, please reference: http://www.cityofgp.com/index.aspx?page=2332", + "Contains information licensed under the Open Government Licence – City of Victoria. For specifics, please reference: http://www.victoria.ca/EN/main/city/open-data-catalogue/open-data-licence.html", + "Contains information licenced under the Open Government Licence - Halifax. For specifics, please reference: http://www.halifax.ca/opendata/OD_TermsOfUse.php", + "Contains information provided by the City of Guelph under an open government license. For specifics, please reference: http://data.open.guelph.ca/pages/open-government-licence", + "Contains information licensed under the Open Government Licence – Haldimand County. For specifics, please reference: http://opendata.haldimandcounty.on.ca/", + "Contains information provided by the City of Hamilton under an open government license. For specifics, please reference: http://www2.hamilton.ca/NR/rdonlyres/C58984A4-FE11-40B9-A231-8572EB922AAA/0/OpenDataTermsAndConditions_Final.html Contains information licensed under the Open Government Licence - Niagara Region. For specifics, please reference: http://www.niagararegion.ca/government/opendata/terms-of-use.aspx", + "Contains information licensed under the Open Government Licence — Town of Oakville. For specifics, please reference: http://www.oakville.ca/data/open_data_licence.html", + "Contains information licensed under the Open Government Licence - The Corporation of the City of Windsor. For specifics, please reference: http://www.citywindsor.ca/opendata/Documents/OpenDataTermsofUse.pdf", + "Contains information licensed under the Open Government Licence – City of Regina. For specifics, please reference: https://www.regina.ca/residents/open-government/open-government-licence/", + "Contains information licensed under the Open Government License - British Columbia. Contains information licensed under the Open Government License - City of Surrey. Contains public sector datasets made available under the City of Brandon's Open Data License. For specifics, please reference: http://opengov.brandon.ca/terms.aspx", + "Contains information licensed under the Open Government License - Winnipeg. For specifics, please reference: https://data.winnipeg.ca/open-data-licence", + "Contains information licensed under the GeoNB Open Data Licence. For specifics, please reference: http://geonb.snb.ca/documents/license/geonb-odl_en.pdf", + "Contains information licensed under the Open Government Licence - The Corporation of the Municipality of Chatham-Kent. Contains information licensed under the Open Government Licence - Niagara Region. For specifics, please referec: https://niagaraopendata.ca/pages/open-government-license-2-0-niagara-region", + "Contains information licensed under the Open Government Licence - City of Welland. Contains information licensed under the Open Government Licence - Prince Edward Island. For specifics, please reference: https://www.princeedwardisland.ca/en/information/finance/open-government-licence-prince-edward-island", + "Contains information licensed under the Open Government License - Kamloops. For specifics, please reference: http://www.kamloops.ca/maps/disclaimer.html", + "Contains information licensed under the Open Government License - Nanaimo. For specifics, please reference: http://www.nanaimo.ca/EN/main/departments/information-technology/DataCatalogue/Licence.html Contains information licensed under the Open Government License – City of New Westminster. For specifics, please reference: http://opendata.newwestcity.ca/licence", + "Contains information licensed under the Open Government License – City of Prince George. For specifics, please reference: http://pgmap.princegeorge.ca/opendata/CityofPrinceGeorge_Open_Government_License_Open_Data.pdf", + "Contains Information licensed under the Open Government Licence – Brantford. For specifics, please reference: http://www.brantford.ca/govt/projects/opendata/Pages/OpenDataLicence.aspx", + "Contains data for Gatineau, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode", + "Contains data for Laval, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode", + "Contains data for Longueuil, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode", + "Contains data for Montreal, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode", + "Contains data for Rimouski, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode" + ], + "country": { + "ISO3": "CAN", + "label": "Canada" + } + }, + { + "copyrights": [ + "The following copyright notice applies to the use of Points of Interest: © 2006 – 2018 TomTom. All rights reserved. Portions of the POI database contained in Points of Interest North America have been provided by Neustar Localeze", + "The following copyright notice applies to the use of Telecommunications: © 2017 Pitney Bowes. All rights reserved. In addition, for the following product layers Wire Center Boundaries, ILEC Boundaries, and Rate Center Boundaries, the following also applies: This product contains information and/or data of Telcordia Technologies, Inc. (Telcordia) licensed to be included herein.", + "The following copyright notice applies to the use of TomTom Traffic: Portions of the data have been provided by Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. © 2017. Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. All rights reserved.", + "© United States Postal Service 2017", + "Contains data made available by the Rhode Island Geographic Information System (RIGIS) consortium, the State of Rhode Island, and the University of Rhode Island. For specifics, please reference: http://www.rigis.org/information", + "Contains Address Points data made available by State of Maryland and MD iMAP. For specifics, please reference: http://imap.maryland.gov." + ], + "country": { + "ISO3": "USA", + "label": "United States" + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightForWorld.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightForWorld.json new file mode 100644 index 000000000000..ab7e51c902d4 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightForWorld.json @@ -0,0 +1,384 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "formatVersion": "0.0.1", + "generalCopyrights": [ + "© 1992 - 2018 TomTom. All rights reserved. This material is proprietary and the subject of copyright protection, database right protection and other intellectual property rights owned by TomTom or its suppliers. The use of this material is subject to the terms of a license agreement. Any unauthorized copying or disclosure of this material will lead to criminal and civil liabilities.", + "Data Source © 2018 TomTom", + "based on" + ], + "regions": [ + { + "copyrights": [ + "This product contains cartographic information (geometry, street names, traffic flow, address points) made available by Govern d’Andorra under legal terms available here; https://www.govern.ad/avis-legal" + ], + "country": { + "ISO3": "AND", + "label": "Andorra" + } + }, + { + "copyrights": [ + "In New South Wales this product contains road centerline geometry from NSW Land Property Information licensed under CC-BY 3.0 AU. © Land and Property Information [2015]. Further information available here: http://spatialservices.finance.nsw.gov.au/mapping_and_imagery/lpi_web_services", + "In Queensland this product contains road centerline geometry from QLD Transport and Main Roads authority made available by the Queensland open data portal and licensed under CC-BY 3.0 AU. Further information available here: https://data.qld.gov.au/dataset/state-controlled-roads-queensland", + "In South Australia this product contains road centerline geometry from SA Department of Planning Transport and Infrastructure made available by the South Australian government and licensed under CC-BY 4.0. Further information available here: http://data.sa.gov.au/data/organization/department-of-planning-transport-and-infrastructure https://data.sa.gov.au/copyright", + "In Tasmania this product contains road centerline attribution from the Tasmanian Government Transport agency. http://www.transport.tas.gov.au/roadsafety/speed", + "In Victoria this product contains cartographic information (roads, speed restriction, vehicle restrictions) made available by the Victorian Government open data portal licensed under CC-BY 4.0. Further information here: http://vicroadsopendata.vicroadsmaps.opendata.arcgis.com/ https://www.data.vic.gov.au/data/dataset", + "In Western Australia this product contains medium scale road centerline geometry from Landgate made available by the Western Australian Government via their open that portal licensed under CC-BY 4.0 http://catalogue.beta.data.wa.gov.au/dataset/roads-lgate-012 http://opendefinition.org/od/2.0/en/", + "This product contains address point data made available in the PSMA Geocoded National Address File (G- NAF) offered via the Australian Federal Government open data portal under EULA terms based on Creative Commons license CC BY 4.0 with the following special restriction. For Specifics please reference: https://data.gov.au/dataset/geocoded-national-address-file-g-naf/resource/09f74802-08b1-4214-a6ea-3591b2753d30" + ], + "country": { + "ISO3": "AUS", + "label": "Australia" + } + }, + { + "copyrights": [ + "© BEV, GZ 1368/2017" + ], + "country": { + "ISO3": "AUT", + "label": "Austria" + } + }, + { + "copyrights": [ + "© Source data. State committee on property of the Republic of Belarus, 2015 © Republic unitary organization <>, 2016" + ], + "country": { + "ISO3": "BLR", + "label": "Belarus" + } + }, + { + "copyrights": [ + "© 2006 – 2018 TomTom. All rights reserved. This material is proprietary and the subject of copyright protection and other intellectual property rights owned or licensed to TomTom. The product includes information copied with permission from Canadian authorities, including © Canada Post Corporation and Department of Natural Resources Canada, All rights reserved. The use of this material is subject to the terms of a License Agreement. You will be held liable for any unauthorized copying or disclosure of this material. Adapted from Statistics Canada: Boundary Files, 2016 Census; Road Network File, 2016; and Census Population and Dwelling Count Highlight Tables, 2016 Census. This does not constitute an endorsement by Statistics Canada of this product", + "The following copyright notice applies to the use of Administrative Area: © 2006 – 2018 TomTom. All rights reserved. Adapted from Statistics Canada: Boundary Files, 2016 Census: Census Population and Dwelling Count Highlight Tables, 2016. This does not constitute an endorsement by Statistics Canada of this product.", + "The following copyright notice applies to the use of Post- FSA layer and 6-digit layer: © 2006 – 2018 TomTom. All rights reserved. This material is proprietary and the subject of copyright protection and other intellectual property rights owned or licensed to TomTom. The product includes information copied with permission from Canadian authorities, including © Canada Post Corporation, All rights reserved. The use of this material is subject to the terms of a License Agreement. You will be held liable for any unauthorized copying or disclosure of this material", + "The following copyright notice applies to the use of Points of Interest: © 2006 – 2018 TomTom. All rights reserved. Portions of the POI database contained in Points of Interest North America have been provided by Neustar Localeze", + "The following copyright notice applies to the use of Telecommunications: © 2017 Pitney Bowes. All rights reserved. In addition, for the following product layers Wire Center Boundaries, ILEC Boundaries, and Rate Center Boundaries, the following also applies: This product contains information and/or data of Telcordia Technologies, Inc. (Telcordia) licensed to be included herein.", + "The following copyright notice applies to the use of TomTom Traffic: Portions of the data have been provided by Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. © 2017. Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. All rights reserved.", + "This product contains address point data made available under the city of Vancouver’s Open Data framework as documented on August 6, 2012 in: vancouver.ca/open-government-licence Contains public sector Datasets made available under the City of Toronto's Open Data Licence v2.0. This is specified in their terms available here: http://www1.toronto.ca/wps/portal/contentonly?vgnextoid=4a37e03bb8d1e310VgnVCM10000071d60f89RCRD", + "Contains information licensed under the Open Government Licence – Strathcona County. For specifics, please reference: https://data.strathcona.ca/licence", + "Contains information licensed under the Open Government Licence – County of Grande Prairie. For specifics, please reference: http://www.countygp.ab.ca/EN/main/community/maps-gis/open-data/open-data-licence.html", + "Contains information licensed under the Open Government Licence – Canada. For specifics, please reference: http://open.canada.ca/en/open-government-licence-canada", + "Contains information licensed under the Calgary Regional Partnership Open Data Licence. For specifics, please reference: http://calgaryregion.ca/dam/Website/reports/General/GIS/Public-documents/Calgary-Regional-Partnership-Open-Data-Licence/Calgary%20Regional%20Partnership%20Open%20Data%20Licence.pdf Contains information licensed under the Open Government Licence – Banff. For specifics, please reference: http://www.banffopendata.ca/Home/About", + "Contains information licensed under the Open Data License – City of Grande Prairie. For specifics, please reference: http://www.cityofgp.com/index.aspx?page=2332", + "Contains information licensed under the Open Government Licence – City of Victoria. For specifics, please reference: http://www.victoria.ca/EN/main/city/open-data-catalogue/open-data-licence.html", + "Contains information licenced under the Open Government Licence - Halifax. For specifics, please reference: http://www.halifax.ca/opendata/OD_TermsOfUse.php", + "Contains information provided by the City of Guelph under an open government license. For specifics, please reference: http://data.open.guelph.ca/pages/open-government-licence", + "Contains information licensed under the Open Government Licence – Haldimand County. For specifics, please reference: http://opendata.haldimandcounty.on.ca/", + "Contains information provided by the City of Hamilton under an open government license. For specifics, please reference: http://www2.hamilton.ca/NR/rdonlyres/C58984A4-FE11-40B9-A231-8572EB922AAA/0/OpenDataTermsAndConditions_Final.html Contains information licensed under the Open Government Licence - Niagara Region. For specifics, please reference: http://www.niagararegion.ca/government/opendata/terms-of-use.aspx", + "Contains information licensed under the Open Government Licence — Town of Oakville. For specifics, please reference: http://www.oakville.ca/data/open_data_licence.html", + "Contains information licensed under the Open Government Licence - The Corporation of the City of Windsor. For specifics, please reference: http://www.citywindsor.ca/opendata/Documents/OpenDataTermsofUse.pdf", + "Contains information licensed under the Open Government Licence – City of Regina. For specifics, please reference: https://www.regina.ca/residents/open-government/open-government-licence/", + "Contains information licensed under the Open Government License - British Columbia. Contains information licensed under the Open Government License - City of Surrey. Contains public sector datasets made available under the City of Brandon's Open Data License. For specifics, please reference: http://opengov.brandon.ca/terms.aspx", + "Contains information licensed under the Open Government License - Winnipeg. For specifics, please reference: https://data.winnipeg.ca/open-data-licence", + "Contains information licensed under the GeoNB Open Data Licence. For specifics, please reference: http://geonb.snb.ca/documents/license/geonb-odl_en.pdf", + "Contains information licensed under the Open Government Licence - The Corporation of the Municipality of Chatham-Kent. Contains information licensed under the Open Government Licence - Niagara Region. For specifics, please referec: https://niagaraopendata.ca/pages/open-government-license-2-0-niagara-region", + "Contains information licensed under the Open Government Licence - City of Welland. Contains information licensed under the Open Government Licence - Prince Edward Island. For specifics, please reference: https://www.princeedwardisland.ca/en/information/finance/open-government-licence-prince-edward-island", + "Contains information licensed under the Open Government License - Kamloops. For specifics, please reference: http://www.kamloops.ca/maps/disclaimer.html", + "Contains information licensed under the Open Government License - Nanaimo. For specifics, please reference: http://www.nanaimo.ca/EN/main/departments/information-technology/DataCatalogue/Licence.html Contains information licensed under the Open Government License – City of New Westminster. For specifics, please reference: http://opendata.newwestcity.ca/licence", + "Contains information licensed under the Open Government License – City of Prince George. For specifics, please reference: http://pgmap.princegeorge.ca/opendata/CityofPrinceGeorge_Open_Government_License_Open_Data.pdf", + "Contains Information licensed under the Open Government Licence – Brantford. For specifics, please reference: http://www.brantford.ca/govt/projects/opendata/Pages/OpenDataLicence.aspx", + "Contains data for Gatineau, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode", + "Contains data for Laval, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode", + "Contains data for Longueuil, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode", + "Contains data for Montreal, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode", + "Contains data for Rimouski, QC made available through Creative Commons Attribution 4.0 International. For specifics, please reference: https://creativecommons.org/licenses/by/4.0/legalcode" + ], + "country": { + "ISO3": "CAN", + "label": "Canada" + } + }, + { + "copyrights": [ + "© Swisstopo" + ], + "country": { + "ISO3": "CHE", + "label": "Switzerland" + } + }, + { + "copyrights": [ + "GeoBasis-DE/Geobasis NRW 2017" + ], + "country": { + "ISO3": "DEU", + "label": "Germany" + } + }, + { + "copyrights": [ + "© DAV, violation of these copyrights shall cause legal proceedings" + ], + "country": { + "ISO3": "DNK", + "label": "Denmark" + } + }, + { + "copyrights": [ + "© 2013-2018 TomTom-Nomago" + ], + "country": { + "ISO3": "DZA", + "label": "Algeria" + } + }, + { + "copyrights": [ + "This product contains cartographic information (geometry, street names, traffic flow) made available by Ajuntament de Lleida under legal terms available here: http://www.paeria.es/cas/avisLegal.asp", + "This product contains cartographic information (geometry, street names, traffic flow) made available by Ayuntamiento de Logroño under legal terms available here: http://web.logro-o.org/giswebpgm/ayuda/condicionesuso.html", + "This product contains address point data made available under the Gobierno de Navarra and offered under Creative Commons- Attribution (CC-by 3.0) license in: http://idena.navarra.es/busquedas/catalog/descargas/descargas.page", + "This product contains address point data made available by la Comunidad de Madrid with the product NomeCalles offered by El Instituto de Estadística de la Comunidad de Madrid in: http://www.madrid.org/nomecalles/DescargaBDTCorte.icm", + "This product contains address point data made available by la Dirección General del Catastro del Ministerio de Economía y Hacienda in: https://www.sedecatastro.gob.es/OVCFrames.aspx?TIPO=TIT&a=masiv", + "This product contains cartographic information (geometry, street names, traffic flow, address points) made available by Ajuntament de El Prat de Llobregat under legal terms available here: http://www.elprat.cat/plantilles/pr_re_mactfill_1c_imfl/_uGU6aDOKh21PMmm2WqoT4ZOhxsiMHAS0S7PZC2PCFqo", + "This product contains cartographic information (geometry, street names, traffic flow, address points) made available by Ayuntamiento de Valencia under legal terms available here: http://www.valencia.es/ayuntamiento/DatosAbiertos.nsf/vDocumentosTituloAux/Condiciones%20de%20uso?opendocument&lang=1&nivel=5&seccion=1", + "This product contains cartographic information (geometry, street names, traffic flow, address points) made available by Ajuntament de Sant Feu de Llobregat under legal terms available here: https://www.santfeliu.cat/common/misc/widget_container.faces?xmid=11796", + "This product contains cartographic information (geometry, street names, traffic flow) made available by Ayuntamiento de Vitoria-Gasteiz under Creative Commons Reconocimiento 3.0 España available here: TT#0041606-16 http://creativecommons.org/licenses/by/3.0/es/legalcode.es" + ], + "country": { + "ISO3": "ESP", + "label": "Spain" + } + }, + { + "copyrights": [ + "(navigation devices only) Michelin data © Michelin 2017 The following copyright applies to the Advanced Navigable MAP, Address Points, 2D City Map and Buildings: Source: Direction générale des Finances Publiques – Cadastre; Updated 2017" + ], + "country": { + "ISO3": "FRA", + "label": "France" + } + }, + { + "copyrights": [ + "Ordnance Survey of Northern Ireland", + "Contains Ordnance Survey data © Crown copyright and database right 2017", + "Code-Point® Open data; Contains Royal Mail data © Royal Mail copyright and database right 2017 Contains National Statistics data © Crown copyright and database right 2017" + ], + "country": { + "ISO3": "GBR", + "label": "United Kingdom" + } + }, + { + "copyrights": [ + "© Base data Bakosurtanal" + ], + "country": { + "ISO3": "IDN", + "label": "Indonesia" + } + }, + { + "copyrights": [ + "This product contains cartographic information (street names, address points) made available by the Regione Lombardia and offered under Italian Open Data License (IODL 2.0) http://www.dati.gov.it/iodl/2.0/) available at the following address: http://www.geoportale.regione.lombardia.it/en/i.i.t.-della-lombardia", + "This product contains cartographic information from Comune di Milano 1)– Servizio Sit e Statistica made available at https://geoportale.comune.milano.it/sit/open-data/ under license Creative Commons Attribution (CC BY 2,5) 2) Web portal available at https://www.comune.milano.it/wps/portal/ist/it/vivicitta/verde/parchi Under license Creative Commons Attribution (CC BY 3.0) (http://www.comune.milano.it/wps/portal/ist/it/extra/others/footer/legal)", + "This product contains cartographic information (street names, address points) made available by Regione Emilia Romagna and offered under Creative Commons Attribution (CC BY 2.5) available at following address http://geoportale.regione.emilia-romagna.it/it/catalogo/dati-cartografici/cartografia-di-base/database-topografico-regionale/gestione-viabilita-indirizzi/toponimi-e-numeri-civici This product contains cartographic information (street names, address points) made available by Comune di Torino and offered under Italian Open Data License (IODL 2.0) available at following address http://aperto.comune.torino.it/?q=node/504", + "This product contains cartographic information (street names, address points) made available by Regione Veneto and offered offered under Italian Open Data License (IODL 2.0) available at following address http://dati.veneto.it/dataset", + "This product contains cartographic information (street names, address points) made available by Regione Toscana and offered offered under under Creative Commons Attribution (CC BY 2.5), according to the legislation available at http://www.regione.toscana.it/documents/10180/492172/Decreto-2014_02_25n663.pdf/162db905-95fd-4b5e-bc41-88a629b5a3e5 and Regolamento http://raccoltanormativa.consiglio.regione.toscana.it/articolo?urndoc=urn:nir:regione.toscana:regolamento.giunta:2007-02-09;6/R&pr=idx,0;artic,1;articparziale,0, data available at following address http://dati.toscana.it/dataset/grafo-civici", + "This product contains cartographic information (area info) made available by Comune di Roma at http://dati.comune.roma.it/cms/it/dettaglio_ambiente.page?contentId=DTS5931 under license Creative Commons Attribution (CC BY 4.0)", + "This product contains data (house numbers, geographical and statistical info on administrative areas) made available under the Istituto Nazionale di Statistica and offered under Creative Commons- Attribution (CC-by 3.0) license in: http://www.istat.it/it/archivio/678 and http://datiopen.istat.it/", + "This product contains address point data made available under the Comune di Verona in: http://www.comune.verona.it/nqcontent.cfm?a_id=37426", + "This product contains address point data made available under the Comune di Vicenza in: http://www.comune.vicenza.it/servizi/opendata.php/76184", + "This product contains address point data from Comune di Milano – Servizio Sit e Statistica This product contains address point data made available under the Provincia di Biella in: http://cartografia.provincia.biella.it/on-line/Home/Repertorio/Consultazione/articolo3000217.html", + "This product contains address point data made available by Comune di Torino and offered under Italian Open Data License (IODL 2.0) available at following address http://aperto.comune.torino.it/?q=node/504", + "This product contains address point data made available under the Comune di Firenze and offered under Creative Commons- Attribution (CC-by 3.0) license in: http://opendata.comune.fi.it/statistica_territorio/dataset_0040.html", + "This product contains address point data made available by Regione Emilia Romagna and offered under Creative Commons Attribution (CC BY 2.5) available at following address http://geoportale.regione.emilia-romagna.it/it/catalogo/dati-cartografici/cartografia-di-base/database-topografico-regionale/gestione-viabilita-indirizzi/toponimi-e-numeri-civici", + "This product contains address point data made available by Regione Toscana and offered under Creative Commons Attribution (CC BY 2.5), according to the legislation available at http://www.regione.toscana.it/documents/10180/492172/Decreto-2014_02_25n663.pdf/162db905-95fd-4b5e-bc41-88a629b5a3e5 and Regolamento http://raccoltanormativa.consiglio.regione.toscana.it/articolo?urndoc=urn:nir:regione.toscana:regolamento.giunta:2007-02-09;6/R&pr=idx,0;artic,1;articparziale,0, data available at following address http://dati.toscana.it/dataset/grafo-civici", + "This product contains address point data made available by Regione Veneto and offered offered under Italian Open Data License (IODL 2.0) available at following address http://dati.veneto.it/dataset", + "This product contains address point data made available by Regione Autonoma Friuli Venezia Giulia and offered under ITALIA OPEN DATA LICENSE V2.0 (IODL 2.0). Data are available at following address : http://www.regione.fvg.it/rafvg/cms/RAFVG/ambiente-territorio/conoscere-ambiente-territorio/", + "This product contains address point data made available by Regione Umbria and offered under CCBY License. Data are available at following address : http://www.umbriageo.regione.umbria.it/pagine/servizi-wms-attivi?permalink=servizi-wms-attivi&permalink=servizi-wms-attivi This product contains address point data made available by Regione Lombardia and offered under Italian Open Data License (IODL 2.0 http://www.dati.gov.it/iodl/2.0/) available at the following address: http://www.geoportale.regione.lombardia.it/en/i.i.t.-della-lombardia" + ], + "country": { + "ISO3": "ITA", + "label": "Italy" + } + }, + { + "copyrights": [ + "© Royal Jordanian Geographic center" + ], + "country": { + "ISO3": "JOR", + "label": "Jordan" + } + }, + { + "copyrights": [ + "© Shobunsha Publications, Inc. © Shobunsha" + ], + "country": { + "ISO3": "JPN", + "label": "Japan" + } + }, + { + "copyrights": [ + "Based upon electronic data © Mappers Co., Ltd. All rights reserved" + ], + "country": { + "ISO3": "KOR", + "label": "Republic of Korea" + } + }, + { + "copyrights": [ + "© FICHIER DE BASE DES ADRESSES GEOCODEES : ADM. DU CADASTRE ET DE LA TOPOGRAPHIE (2017) [© File taken from the database of geocoded addresses: Land Registry and Topography Administration (2017)]" + ], + "country": { + "ISO3": "LUX", + "label": "Luxembourg" + } + }, + { + "copyrights": [ + "Macao Special Administrative Region Government – Cartography and Cadastre Bureau", + "This product contains Road Geometry data made available by Macao Special Administrative Region Government – Cartography and Cadastre Bureau: http://www.dscc.gov.mo/ENG/copyright.html" + ], + "country": { + "ISO3": "MAC", + "label": "Macao" + } + }, + { + "copyrights": [ + "The following copyright notice applies to the use of TomTom Traffic: Portions of the data have been provided by Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. © 2017. Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. All rights reserved." + ], + "country": { + "ISO3": "MEX", + "label": "Mexico" + } + }, + { + "copyrights": [ + "This product includes data from Mapping Unit, Malta Environment and Planning Authority and licensed on behalf of them or © Mapping Unit, Malta Environment and Planning Authority" + ], + "country": { + "ISO3": "MLT", + "label": "Malta" + } + }, + { + "copyrights": [ + "Topografische onderground Copyright © dienst voor het kadaster en de openbare registers, Apeldoorn 2017" + ], + "country": { + "ISO3": "NLD", + "label": "Netherlands" + } + }, + { + "copyrights": [ + "Contains data under the Norwegian licence for Open Government data (NLOD) distributed by Statens Vegvesen" + ], + "country": { + "ISO3": "NOR", + "label": "Norway" + } + }, + { + "copyrights": [ + "This product contains cartographic information (geometry, street names) made available by LINZ and sourced from the LINZ Data Service and licensed under the Creative Commons Attribution 3.0 New Zealand license", + "This product contains cartographic information (geometry) made with the help of Aerial Imagery made available by LINZ and sourced from the LINZ Data Service and licensed by various government agencies for re-use under the Creative Commons Attribution 3.0 New Zealand license", + "This product contains cartographic information (crash data) made available by New Zealand Transport Agency licensed under CC-BY 3.0 NZL. Further information here: http://www.nzta.govt.nz/resources/grouped-crash-sites", + "This product contains cartographic information (geometry, lane information, street names) made available by New Zealand Transport Agency on agreement on a case by case basis. Further information here: https://www.nzta.govt.nz/about-us/about-this-site#privacy https://www.nzta.govt.nz/projects/", + "This product contains address point data made available in the New Zealand Address Dataset which is sourced from New Zealand Post and Land Information New Zealand (LINZ). New Zealand Post copyright reserved. Data sourced from LINZ Data Service is subject to Creative Commons Attribution 3.0 New Zealand license" + ], + "country": { + "ISO3": "NZL", + "label": "New Zealand" + } + }, + { + "copyrights": [ + "This product contains postal code data of Poşta Română made available under Open Government License: http://data.gov.ro/base/images/logoinst/OGL-ROU-1.0.pdf http://data.gov.ro/dataset/coduri-postale-romania" + ], + "country": { + "ISO3": "ROU", + "label": "Romania" + } + }, + { + "copyrights": [ + "© ROSREESTR" + ], + "country": { + "ISO3": "RUS", + "label": "Russian Federation" + } + }, + { + "copyrights": [ + "The following copyright notice applies to the use of Points of Interest: © 2006 – 2018 TomTom. All rights reserved. Portions of the POI database contained in Points of Interest North America have been provided by Neustar Localeze", + "The following copyright notice applies to the use of Telecommunications: © 2017 Pitney Bowes. All rights reserved. In addition, for the following product layers Wire Center Boundaries, ILEC Boundaries, and Rate Center Boundaries, the following also applies: This product contains information and/or data of Telcordia Technologies, Inc. (Telcordia) licensed to be included herein.", + "The following copyright notice applies to the use of TomTom Traffic: Portions of the data have been provided by Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. © 2017. Total Traffic & Weather Network, a division of iHeartMedia + Entertainment, Inc. All rights reserved.", + "© United States Postal Service 2017", + "Contains data made available by the Rhode Island Geographic Information System (RIGIS) consortium, the State of Rhode Island, and the University of Rhode Island. For specifics, please reference: http://www.rigis.org/information", + "Contains Address Points data made available by State of Maryland and MD iMAP. For specifics, please reference: http://imap.maryland.gov." + ], + "country": { + "ISO3": "USA", + "label": "United States" + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightFromBoundingBox.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightFromBoundingBox.json new file mode 100644 index 000000000000..0f73246575f9 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetCopyrightFromBoundingBox.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "mincoordinates": "52.41064,4.84228", + "maxcoordinates": "52.41072,4.84239", + "text": "yes", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "formatVersion": "0.0.1", + "generalCopyrights": [ + "© 1992 – 2016 TomTom. All rights reserved. This material is proprietary and the subject of copyright protection, database right protection and other intellectual property rights owned by TomTom or its suppliers. The use of this material is subject to the terms of a license agreement. Any unauthorized copying or disclosure of this material will lead to criminal and civil liabilities.", + "Data Source © 2016 TomTom", + "based on" + ], + "regions": [ + { + "copyrights": [ + "Topografische onderground Copyright © dienst voor het kadaster en de openbare registers, Apeldoorn 2016." + ], + "country": { + "ISO3": "NLD", + "label": "Netherlands" + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapImage.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapImage.json new file mode 100644 index 000000000000..b316545d0ef1 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapImage.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "png", + "zoom": 2, + "bbox": "1.355233,42.982261,24.980233,56.526017", + "layer": "basic", + "style": "main", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "headers": {}, + "body": "binary string image" + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapImageryTile.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapImageryTile.json new file mode 100644 index 000000000000..e3f6cda8376f --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapImageryTile.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "png", + "style": "satellite", + "zoom": 6, + "x": 10, + "y": 22, + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "headers": {}, + "body": "binary string image" + }, + "400": { + "headers": {}, + "body": { + "statuscode": "400", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + }, + "401": { + "headers": {}, + "body": { + "statuscode": "401", + "message": "Unauthorized: Access is denied due to invalid credentials." + } + }, + "403": { + "headers": {}, + "body": { + "statuscode": "403", + "message": "Permission, capacity, or authentication issues." + } + }, + "404": { + "headers": {}, + "body": { + "statuscode": "404", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + }, + "500": { + "headers": {}, + "body": { + "statuscode": "500", + "message": "An error occurred while processing the request. Please try again later." + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapStateTile.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapStateTile.json new file mode 100644 index 000000000000..997c25929649 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapStateTile.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "1.0", + "statesetId": "[statesetId]", + "zoom": 6, + "x": 10, + "y": 22, + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.mapbox-vector-tile" + }, + "body": "state tile vector graphic content" + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapTile.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapTile.json new file mode 100644 index 000000000000..b24399f4e996 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/examples/GetMapTile.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "png", + "layer": "basic", + "style": "main", + "zoom": 6, + "x": 10, + "y": 22, + "tilesize": 512, + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "headers": {}, + "body": "binary string image" + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/render.json b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/render.json new file mode 100644 index 000000000000..91719c1102f1 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Render/preview/1.0/render.json @@ -0,0 +1,1177 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Render Service", + "version": "1.0", + "description": "Azure Maps Render REST APIs" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "RasterTileFormat": { + "name": "format", + "description": "Desired format of the response. Possible value: png.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "png" + ], + "x-ms-enum": { + "name": "RasterTileFormat", + "modelAsString": false, + "values": [ + { + "value": "png", + "description": "An image in the png format. Supports zoom levels 0 through 18." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "Language": { + "name": "language", + "in": "query", + "description": "Language in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used.\n\nPlease refer to [Supported Languages](https://docs.microsoft.com/en-us/azure/azure-maps/supported-languages) for details.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TileFormat": { + "name": "format", + "description": "Desired format of the response. Possible values are png & pbf.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "png", + "pbf" + ], + "x-ms-enum": { + "name": "TileFormat", + "modelAsString": false, + "values": [ + { + "value": "png", + "description": "An image in the png format. Supports zoom levels 0 through 18." + }, + { + "value": "pbf", + "description": "Vector graphic in the pbf format. Supports zoom levels 0 through 22." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "xTileIndex": { + "name": "x", + "x-ms-client-name": "xTileIndex", + "in": "query", + "description": "X coordinate of the tile on zoom grid. Value must be in the range [0, 2`zoom` -1].\n\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "yTileIndex": { + "name": "y", + "x-ms-client-name": "yTileIndex", + "in": "query", + "description": "Y coordinate of the tile on zoom grid. Value must be in the range [0, 2`zoom` -1].\n\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "TextFormat": { + "name": "format", + "description": "Desired format of the response. Value can be either _json_ or _xml_.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json", + "xml" + ], + "x-ms-enum": { + "name": "TextFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + }, + { + "value": "xml", + "description": "[The Extensible Markup Language](https://www.w3.org/TR/xml/)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "RasterZoom18": { + "name": "zoom", + "in": "query", + "description": "Zoom level for the desired tile. Zoom value must be in the range: 0-18 (inclusive).\n\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "VectorZoom": { + "name": "zoom", + "in": "query", + "description": "Zoom level for the desired tile. Zoom value must be in the range: 0-20 (inclusive).\n\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "ImageryRasterZoom": { + "name": "zoom", + "in": "query", + "description": "Zoom level for the desired tile. Zoom value must be in the range: 1-19 (inclusive).\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "RasterVectorNaturalEarthZoom": { + "name": "zoom", + "in": "query", + "description": "Zoom level for the desired tile. For _raster_ tiles, value must be in the range: 0-18 (inclusive). Terra raster tiles, values must be in the range 0-6 (inclusive). For _vector_ tiles, value must be in the range: 0-22 (inclusive).\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "Text": { + "name": "text", + "in": "query", + "description": "Yes/no value to exclude textual data from response. Only images and country names will be in response.", + "required": false, + "type": "string", + "enum": [ + "yes", + "no" + ], + "default": "yes", + "x-ms-parameter-location": "method" + }, + "View": { + "name": "view", + "in": "query", + "description": "The View parameter specifies which set of geopolitically disputed content is returned via Azure Maps services, including borders and labels displayed on the map. The View parameter (also referred to as “user region parameter”) will show the correct maps for that country/region. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN.\n\nPlease refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/map/static/{format}": { + "get": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\nThe static image service renders a user-defined, rectangular image containing a map section using a zoom level from 0 to 20. The static image service renders a user-defined, rectangular image containing a map section using a zoom level from 0 to 20. The supported resolution range for the map image is from 1x1 to 8192x8192. If you are deciding when to use the static image service over the map tile service, you may want to consider how you would like to interact with the rendered map. If the map contents will be relatively unchanging, a static map is a good choice. If you want to support a lot of zooming, panning and changing of the map content, the map tile service would be a better choice. \n\nService also provides Image Composition functionality to get a static image back with additional data like; pushpins and geometry overlays with following S0 and S1 capabilities. \n\nIn S0 you can:\n- Render up to 5 pushpins specified in the request\n- Provide one custom image for the pins referenced in the request\n- Add labels to the pushpins\n\nIn S1 you can:\n- Render pushpins through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService)\n- Specify multiple pushpin styles\n- Provide custom pushpin images stored in [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService)\n- Render circle, polyline and polygon geometry types.\n- Render of supported GeoJSON geometry types uploaded through [Azure Maps Data Service](https://aka.ms/AzureMapsMapDataService)\n\nPlease see [How-to-Guide](https://aka.ms/AzureMapsHowToGuideImageCompositor) for detailed examples.\n\n_Note_ : Either **center** or **bbox** parameter must be supplied to the\nAPI.\n

\nThe supported Lat and Lon ranges when using the **bbox** parameter, are as follows:\n

\n\n |Zoom Level | Max Lon Range | Max Lat Range|\n |:----------|:----------------|:-------------|\n |0 | 360.0 | 170.0 | \n |1 | 360.0 | 170.0 |\n |2 | 360.0 | 170.0 |\n |3 | 360.0 | 170.0 |\n |4 | 360.0 | 170.0 |\n |5 | 180.0 | 85.0 |\n |6 | 90.0 | 42.5 |\n |7 | 45.0 | 21.25 |\n |8 | 22.5 | 10.625 |\n |9 | 11.25 | 5.3125 |\n |10 | 5.625 | 2.62625 |\n |11 | 2.8125 | 1.328125 |\n |12 | 1.40625 | 0.6640625 |\n |13 | 0.703125 | 0.33203125 |\n |14 | 0.3515625 | 0.166015625 |\n |15 | 0.17578125 | 0.0830078125 | \n |16 | 0.087890625 | 0.0415039063 | \n |17 | 0.0439453125 | 0.0207519531 |\n |18 | 0.0219726563 | 0.0103759766 |\n |19 | 0.0109863281 | 0.0051879883 |\n |20 | 0.0054931641 | 0.0025939941 |", + "operationId": "Render_GetMapImage", + "x-ms-examples": { + "GetMapStaticImage": { + "$ref": "./examples/GetMapImage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/RasterTileFormat" + }, + { + "name": "layer", + "in": "query", + "description": "Map layer requested. If layer is set to labels or hybrid, the format should be png.", + "required": false, + "default": "basic", + "type": "string", + "enum": [ + "basic", + "hybrid", + "labels" + ], + "x-ms-enum": { + "name": "StaticMapLayer", + "modelAsString": false, + "values": [ + { + "value": "basic", + "description": "Returns an image containing all map features including polygons, borders, roads and labels." + }, + { + "value": "hybrid", + "description": "Returns an image containing borders, roads, and labels, and can be overlaid on other tiles (such as satellite imagery) to produce hybrid tiles." + }, + { + "value": "labels", + "description": "Returns an image of just the map's label information." + } + ] + } + }, + { + "name": "style", + "in": "query", + "description": "Map style to be returned. Possible values are main and dark.", + "required": false, + "default": "main", + "type": "string", + "enum": [ + "main", + "dark" + ], + "x-ms-enum": { + "name": "MapImageStyle", + "modelAsString": false, + "values": [ + { + "value": "main", + "description": "Azure Maps main style" + }, + { + "value": "dark", + "description": "Dark grey version of the Azure Maps main style" + } + ] + } + }, + { + "name": "zoom", + "in": "query", + "description": "Desired zoom level of the map. Zoom value must be in the range: 0-20 (inclusive). Default value is 12.

Please see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": false, + "default": 12, + "type": "integer", + "minimum": 0, + "maximum": 20 + }, + { + "name": "center", + "in": "query", + "description": "Coordinates of the center point. Format: 'lon,lat'. Projection used\n- EPSG:3857. Longitude range: -180 to 180. Latitude range: -85 to 85. \n\nNote: Either center or bbox are required parameters. They are\nmutually exclusive.", + "required": false, + "type": "string" + }, + { + "name": "bbox", + "in": "query", + "description": "Bounding box. Projection used - EPSG:3857. Format : 'minLon, minLat,\nmaxLon, maxLat'. \n\nNote: Either bbox or center are required\nparameters. They are mutually exclusive. It shouldn’t be used with\nheight or width.\n\nThe maximum allowed ranges for Lat and Lon are defined for each zoom level\nin the table at the top of this page.", + "required": false, + "type": "string" + }, + { + "name": "height", + "in": "query", + "description": "Height of the resulting image in pixels. Range is 1 to 8192. Default\nis 512. It shouldn’t be used with bbox.", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 8192, + "default": 512 + }, + { + "name": "width", + "in": "query", + "description": "Width of the resulting image in pixels. Range is 1 to 8192. Default is 512. It shouldn’t be used with bbox.", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 8192, + "default": 512 + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/View" + }, + { + "name": "pins", + "description": "Pushpin style and instances. Use this parameter to optionally add pushpins to the image.\nThe pushpin style describes the appearance of the pushpins, and the instances specify\nthe coordinates of the pushpins and optional labels for each pin. (Be sure to properly URL-encode values of this\nparameter since it will contain reserved characters such as pipes and punctuation.)\n\nThe Azure Maps account S0 SKU only supports a single instance of the pins parameter. Other SKUs\nallow multiple instances of the pins parameter to specify multiple pin styles.\n\nTo render a pushpin at latitude 45°N and longitude 122°W using the default built-in pushpin style, add the\nquerystring parameter \n\n`pins=default||-122 45` \n\nNote that the longitude comes before the latitude.\nAfter URL encoding this will look like\n\n`pins=default%7C%7C-122+45`\n\nAll of the examples here show the pins\nparameter without URL encoding, for clarity.\n\nTo render a pin at multiple locations, separate each location with a pipe character. For example, use\n\n`pins=default||-122 45|-119.5 43.2|-121.67 47.12`\n\nThe S0 Azure Maps account SKU only allows five pushpins. Other account SKUs do not have this limitation.\n\n### Style Modifiers\n\nYou can modify the appearance of the pins by adding style modifiers. These are added after the style but before\nthe locations and labels. Style modifiers each have a two-letter name. These abbreviated names are used to help\nreduce the length of the URL.\n\nTo change the color of the pushpin, use the 'co' style modifier and specify the color using the HTML/CSS RGB color\nformat which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use\na deep pink color which you would specify as #FF1493 in CSS, use\n\n`pins=default|coFF1493||-122 45`\n\n### Pushpin Labels\n\nTo add a label to the pins, put the label in single quotes just before the coordinates. For example, to label\nthree pins with the values '1', '2', and '3', use\n\n`pins=default||'1'-122 45|'2'-119.5 43.2|'3'-121.67 47.12`\n\nThere is a built in pushpin style called 'none' that does not display a pushpin image. You can use this if\nyou want to display labels without any pin image. For example,\n\n`pins=none||'A'-122 45|'B'-119.5 43.2`\n\nTo change the color of the pushpin labels, use the 'lc' label color style modifier. For example, to use pink\npushpins with black labels, use\n\n`pins=default|coFF1493|lc000000||-122 45`\n\nTo change the size of the labels, use the 'ls' label size style modifier. The label size represents the approximate\nheight of the label text in pixels. For example, to increase the label size to 12, use\n\n`pins=default|ls12||'A'-122 45|'B'-119 43`\n\nThe labels are centered at the pushpin 'label anchor.' The anchor location is predefined for built-in pushpins and\nis at the top center of custom pushpins (see below). To override the label anchor, using the 'la' style modifier\nand provide X and Y pixel coordinates for the anchor. These coordinates are relative to the top left corner of the\npushpin image. Positive X values move the anchor to the right, and positive Y values move the anchor down. For example,\nto position the label anchor 10 pixels right and 4 pixels above the top left corner of the pushpin image,\nuse\n\n`pins=default|la10 -4||'A'-122 45|'B'-119 43`\n\n### Custom Pushpins\n\nTo use a custom pushpin image, use the word 'custom' as the pin style name, and then specify a URL after the\nlocation and label information. Use two pipe characters to indicate that you're done specifying locations and are\nstarting the URL. For example,\n\n`pins=custom||-122 45||http://contoso.com/pushpins/red.png`\n\nAfter URL encoding, this would look like\n\n`pins=custom%7C%7C-122+45%7C%7Chttp%3A%2F%2Fcontoso.com%2Fpushpins%2Fred.png`\n\nBy default, custom pushpin images are drawn centered at the pin coordinates. This usually isn't ideal as it obscures\nthe location that you're trying to highlight. To override the anchor location of the pin image, use the 'an'\nstyle modifier. This uses the same format as the 'la' label anchor style modifier. For example, if your custom\npin image has the tip of the pin at the top left corner of the image, you can set the anchor to that spot by\nusing\n\n`pins=custom|an0 0||-122 45||http://contoso.com/pushpins/red.png`\n\nNote: If you use the 'co' color modifier with a custom pushpin image, the specified color will replace the RGB \nchannels of the pixels in the image but will leave the alpha (opacity) channel unchanged. This would usually\nonly be done with a solid-color custom image.\n\n### Getting Pushpins from Azure Maps Data Storage\n\nFor all Azure Maps account SKUs other than S0,\nthe pushpin image and location information can be obtained from Azure Maps Data Storage. After uploading a pushpin image\nor a GeoJSON document containing pin locations, the Data Storage service returns a Unique Data ID (UDID) that you can use\nto reference the data in the pins parameter.\n\nTo use a custom pushpin image from Azure Maps Data Storage, specify the UDID prefixed by 'udid-' as the name of the\npushpin style. For example,\n\n`pins=udid-fe22c504-3a81-4fcd-adc6-a3507ce866c1||-122 45`\n\nTo use the point geometry from an uploaded GeoJSON document as the pin locations, specify the UDID in the locations\nsection of the pins parameter. For example,\n\n`pins=default||udid-29dc105a-dee7-409f-a3f9-22b066ae4713`\n\nNote that\nonly point and multipoint geometry, points and multipoints from geometry collections, and point geometry from features\nwill be used. Linestring and polygon geometry will be ignored. If the point comes from a feature and the feature\nhas a string property called \"label\", the value of that property will be used as the label for the pin.\n\nYou can mix pin locations from Data Storage and pin locations specified in the pins parameter. Any of the pipe-delimited\npin locations can be a longitude and latitude or a UDID. For example,\n\n`pins=default||-122 45|udid-29dc105a-dee7-409f-a3f9-22b066ae4713|-119 43`\n\n### Scale, Rotation, and Opacity\n\nYou can make pushpins and their labels larger or smaller by using the 'sc' scale style modifier. This is a\nvalue greater than zero. A value of 1 is the standard scale. Values larger than 1 will make the pins larger, and\nvalues smaller than 1 will make them smaller. For example, to draw the pushpins 50% larger than normal, use\n\n`pins=default|sc1.5||-122 45`\n\nYou can rotate pushpins and their labels by using the 'ro' rotation style modifier. This is a number of degrees\nof clockwise rotation. Use a negative number to rotate counter-clockwise. For example, to rotate the pushpins\n90 degrees clockwise and double their size, use\n\n`pins=default|ro90|sc2||-122 45`\n\nYou can make pushpins and their labels partially transparent by specifying the 'al' alpha style modifier.\nThis is a number between 0 and 1 indicating the opacity of the pushpins. Zero makes them completely transparent\n(and not visible) and 1 makes them completely opaque (which is the default). For example, to make pushpins\nand their labels only 67% opaque, use\n\n`pins=default|al.67||-122 45`\n\n### Style Modifier Summary\n\nModifier | Description | Range \n:--------:|-----------------|------------------\nal | Alpha (opacity) | 0 to 1 \nan | Pin anchor | * \nco | Pin color | 000000 to FFFFFF \nla | Label anchor | * \nlc | Label color | 000000 to FFFFFF \nls | Label size | Greater than 0 \nro | Rotation | -360 to 360 \nsc | Scale | Greater than 0 \n\n* X and Y coordinates can be anywhere within pin image or a margin around it.\nThe margin size is the minimum of the pin width and height.", + "in": "query", + "required": false, + "type": "array", + "collectionFormat": "multi", + "items": { + "type": "string" + }, + "x-publish": true + }, + { + "name": "path", + "description": "Path style and locations. Use this parameter to optionally add lines, polygons or circles to the image.\nThe path style describes the appearance of the line and fill. (Be sure to properly URL-encode values of this\nparameter since it will contain reserved characters such as pipes and punctuation.)\n\nPath parameter is supported in Azure Maps account SKU starting with S1. Multiple instances of the path parameter \nallow to specify multiple geometries with their styles. Number of parameters per request is limited to 10 and\nnumber of locations is limited to 100 per path.\n\nTo render a circle with radius 100 meters and center point at latitude 45°N and longitude 122°W using the default style, add the\nquerystring parameter \n\n`path=ra100||-122 45` \n\nNote that the longitude comes before the latitude.\nAfter URL encoding this will look like\n\n`path=ra100%7C%7C-122+45`\n\nAll of the examples here show the path parameter without URL encoding, for clarity.\n\nTo render a line, separate each location with a pipe character. For example, use\n\n`path=||-122 45|-119.5 43.2|-121.67 47.12`\n\nTo render a polygon, last location must be equal to the start location. For example, use\n\n`path=||-122 45|-119.5 43.2|-121.67 47.12|-122 45`\n\nLongitude and latitude values for locations of lines and polygons can be in the range from -360 to 360 to allow for rendering of geometries crossing the anti-meridian.\n\n### Style Modifiers\n\nYou can modify the appearance of the path by adding style modifiers. These are added before the locations. \nStyle modifiers each have a two-letter name. These abbreviated names are used to help reduce the length\nof the URL.\n\nTo change the color of the outline, use the 'lc' style modifier and specify the color using the HTML/CSS RGB color\nformat which is a six-digit hexadecimal number (the three-digit form is not supported). For example, to use\na deep pink color which you would specify as #FF1493 in CSS, use\n\n`path=lcFF1493||-122 45|-119.5 43.2`\n\nMultiple style modifiers may be combined together to create a more complex visual style.\n\n`lc0000FF|lw3|la0.60|fa0.50||-122.2 47.6|-122.2 47.7|-122.3 47.7|-122.3 47.6|-122.2 47.6`\n\n### Getting Path locations from Azure Maps Data Storage\n\nFor all Azure Maps account SKUs other than S0, the path location information can be obtained from Azure Maps Data Storage. \nAfter uploading a GeoJSON document containing path locations, the Data Storage service returns a Unique Data ID (UDID) that you can use\nto reference the data in the path parameter.\n\nTo use the point geometry from an uploaded GeoJSON document as the path locations, specify the UDID in the locations\nsection of the path parameter. For example,\n\n`path=||udid-29dc105a-dee7-409f-a3f9-22b066ae4713`\n\nNote the it is not allowed to mix path locations from Data Storage with locations specified in the path parameter. \n\n### Style Modifier Summary\n\nModifier | Description | Range \n:--------:|------------------------|------------------\nlc | Line color | 000000 to FFFFFF\nfc | Fill color | 000000 to FFFFFF\nla | Line alpha (opacity) | 0 to 1 \nfa | Fill alpha (opacity) | 0 to 1 \nlw | Line width | Greater than 0 \nra | Circle radius (meters) | Greater than 0", + "in": "query", + "required": false, + "type": "array", + "collectionFormat": "multi", + "items": { + "type": "string" + }, + "x-publish": true + } + ], + "produces": [ + "application/json", + "image/jpeg", + "image/png" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MapStaticResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/map/tile/{format}": { + "get": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\nFetches map tiles in vector or raster format typically to be integrated into a new map control or SDK. By default, Azure uses vector map tiles for its web map control (see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid))\n\n**Note**: Weather tiles are only available via [Get Map Tile V2 API](https://aka.ms/AzureMapsWeatherTiles). We recommend to start to use the new [Get Map Tile V2 API](https://aka.ms/GetMapTileV2).", + "operationId": "Render_GetMapTile", + "x-ms-examples": { + "GetMapTile": { + "$ref": "./examples/GetMapTile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TileFormat" + }, + { + "name": "layer", + "in": "query", + "description": "Map layer requested. Possible values are basic, hybrid, labels and terra.", + "required": true, + "enum": [ + "basic", + "hybrid", + "labels", + "terra" + ], + "type": "string", + "x-ms-enum": { + "name": "MapTileLayer", + "modelAsString": false, + "values": [ + { + "value": "basic", + "description": "Returns a tile containing all map features including polygons, borders, roads and labels." + }, + { + "value": "hybrid", + "description": "Returns a tile containing borders, roads, and labels, and can be overlaid on other tiles (such as satellite imagery) to produce hybrid tiles." + }, + { + "value": "labels", + "description": "Returns a tile of just the map's label information." + }, + { + "value": "terra", + "description": "Map canvas complete with shaded relief tiles. Zoom levels 0-6 (inclusive) are supported. Png is the only supported TileFormat and only available MapTileSize is 512." + } + ] + } + }, + { + "name": "style", + "in": "query", + "description": "Map style to be returned. Possible values are main, dark, and shaded_relief.", + "required": true, + "type": "string", + "enum": [ + "main", + "dark", + "shaded_relief" + ], + "x-ms-enum": { + "name": "MapTileStyle", + "modelAsString": false, + "values": [ + { + "value": "main", + "description": "Azure Maps main style" + }, + { + "value": "dark", + "description": "Dark grey version of the Azure Maps main style. PNG is the only supported TileFormat." + }, + { + "value": "shaded_relief", + "description": "Azure Maps main style completed with shaded relief. Supported by Layer terra." + } + ] + } + }, + { + "$ref": "#/parameters/RasterVectorNaturalEarthZoom" + }, + { + "$ref": "#/parameters/xTileIndex" + }, + { + "$ref": "#/parameters/yTileIndex" + }, + { + "name": "tileSize", + "in": "query", + "description": "The size of the returned map tile in pixels.", + "required": false, + "type": "string", + "default": "256", + "enum": [ + "256", + "512" + ], + "x-ms-enum": { + "name": "MapTileSize", + "modelAsString": false, + "values": [ + { + "value": "256", + "description": "Return a 256 by 256 pixel tile." + }, + { + "value": "512", + "description": "Return a 512 by 512 pixel tile." + } + ] + } + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/View" + } + ], + "produces": [ + "application/json", + "image/jpeg", + "image/png" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MapTileResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/map/statetile": { + "get": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\nFetches state tiles in vector format typically to be integrated into indoor maps module of map control or SDK. The map control will call this API after user turns on dynamic styling (see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid))", + "operationId": "Render_GetMapStateTilePreview", + "x-ms-examples": { + "GetMapStateTile": { + "$ref": "./examples/GetMapStateTile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VectorZoom" + }, + { + "$ref": "#/parameters/xTileIndex" + }, + { + "$ref": "#/parameters/yTileIndex" + }, + { + "name": "statesetId", + "in": "query", + "description": "The stateset id.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + ], + "produces": [ + "application/vnd.mapbox-vector-tile", + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MapStateTileResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/map/copyright/caption/{format}": { + "get": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\n\nCopyrights API is designed to serve copyright information for Render Tile \nservice. In addition to basic copyright for the whole map, API is serving \nspecific groups of copyrights for some countries.\n\nAs an alternative to copyrights for map request, one can receive captions\nfor displaying the map provider information on the map.", + "operationId": "Render_GetCopyrightCaption", + "x-ms-examples": { + "GetCopyrightCaption": { + "$ref": "./examples/GetCopyrightCaption.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CopyrightCaptionResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/map/imagery/{format}": { + "get": { + "x-publish": true, + "description": "**Applies to:** S1 pricing tier.\n\n\nThis service returns a map image tile with size 256x256, given the x and y coordinates and zoom\nlevel. Zoom level ranges from 1 to 19. The current available style value is 'satellite' which provides satellite\nimagery alone.\n\n\n**Note**: We recommend to start to use the new [Get Map Tile V2 API](https://aka.ms/GetMapTileV2).", + "operationId": "Render_GetMapImageryTile", + "x-ms-examples": { + "GetMapImagery": { + "$ref": "./examples/GetMapImageryTile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/RasterTileFormat" + }, + { + "name": "style", + "in": "query", + "description": "Map style to be returned. __Possible values:__ satellite.", + "required": true, + "type": "string", + "enum": [ + "satellite" + ], + "x-ms-enum": { + "name": "MapImageryStyle", + "modelAsString": false, + "values": [ + { + "value": "satellite", + "description": "Satellite imagery" + } + ] + } + }, + { + "$ref": "#/parameters/ImageryRasterZoom" + }, + { + "$ref": "#/parameters/xTileIndex" + }, + { + "$ref": "#/parameters/yTileIndex" + } + ], + "produces": [ + "application/json", + "image/jpeg", + "image/png" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MapImageryResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/map/copyright/bounding/{format}": { + "get": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\nReturns copyright information for a given bounding box. Bounding-box requests should specify the minimum and maximum longitude and latitude (EPSG-3857) coordinates", + "operationId": "Render_GetCopyrightFromBoundingBox", + "x-ms-examples": { + "GetCopyrightBounding": { + "$ref": "./examples/GetCopyrightFromBoundingBox.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "mincoordinates", + "in": "query", + "description": "Minimum coordinates of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228", + "required": true, + "type": "string" + }, + { + "name": "maxcoordinates", + "in": "query", + "description": "Maximum coordinates of bounding box in latitude longitude coordinate system. E.g. 52.41064,4.84228", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/Text" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CopyrightBoundingResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/map/copyright/tile/{format}": { + "get": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\n\nCopyrights API is designed to serve copyright information for Render Tile service. In addition to basic copyright for the whole map, API is serving specific groups of copyrights for some countries.\nReturns the copyright information for a given tile. To obtain the copyright information for a particular tile, the request should specify the tile's zoom level and x and y coordinates (see: Zoom Levels and Tile Grid).", + "operationId": "Render_GetCopyrightForTile", + "x-ms-examples": { + "GetCopyrightTile": { + "$ref": "./examples/GetCopyrightForTile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "$ref": "#/parameters/RasterZoom18" + }, + { + "$ref": "#/parameters/xTileIndex" + }, + { + "$ref": "#/parameters/yTileIndex" + }, + { + "$ref": "#/parameters/Text" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CopyrightTileResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/map/copyright/world/{format}": { + "get": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\nCopyrights API is designed to serve copyright information for Render Tile service. In addition to basic copyright for the whole map, API is serving specific groups of copyrights for some countries.\nReturns the copyright information for the world. To obtain the default copyright information for the whole world, do not specify a tile or bounding box.", + "operationId": "Render_GetCopyrightForWorld", + "x-ms-examples": { + "GetCopyrightWorld": { + "$ref": "./examples/GetCopyrightForWorld.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "$ref": "#/parameters/Text" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CopyrightWorldResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "CopyrightBoundingResult": { + "description": "This object is returned from a successful Copyright Bounding call", + "type": "object", + "properties": { + "formatVersion": { + "description": "Format Version property", + "type": "string", + "readOnly": true + }, + "generalCopyrights": { + "description": "General Copyrights array", + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true + } + }, + "regions": { + "description": "Regions array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Region" + } + } + } + }, + "Region": { + "type": "object", + "properties": { + "copyrights": { + "description": "Copyrights array", + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true + } + }, + "country": { + "description": "Country property", + "type": "object", + "readOnly": true, + "properties": { + "ISO3": { + "description": "ISO3 property", + "type": "string", + "readOnly": true + }, + "label": { + "description": "Label property", + "type": "string", + "readOnly": true + } + } + } + } + }, + "CopyrightCaptionResult": { + "description": "This object is returned from a successful Copyright Caption call", + "type": "object", + "properties": { + "formatVersion": { + "description": "Format Version property", + "type": "string", + "readOnly": true + }, + "copyrightsCaption": { + "description": "Copyrights Caption property", + "type": "string", + "readOnly": true + } + } + }, + "CopyrightWorldResult": { + "description": "This object is returned from a successful Copyright World call", + "type": "object", + "properties": { + "formatVersion": { + "description": "Format Version property", + "type": "string", + "readOnly": true + }, + "generalCopyrights": { + "description": "General Copyrights array", + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true + } + }, + "regions": { + "description": "Regions array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Region" + } + } + } + }, + "CopyrightTileResult": { + "description": "This object is returned from a successful Copyright Tile call", + "type": "object", + "properties": { + "formatVersion": { + "description": "Format Version property", + "type": "string", + "readOnly": true + }, + "generalCopyrights": { + "description": "General Copyrights array", + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true + } + }, + "regions": { + "description": "Regions array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Region" + } + } + } + }, + "MapStaticResult": { + "description": "This image is returned from a successful Map Static call", + "type": "object", + "format": "file", + "readOnly": true + }, + "MapTileResult": { + "description": "This image is returned from a successful Map Tile call", + "type": "object", + "format": "file", + "readOnly": true + }, + "MapStateTileResult": { + "description": "This tile is returned from a successful Map State Tile call", + "type": "object", + "format": "file", + "readOnly": true + }, + "MapImageryResult": { + "description": "This image is returned from a successful Map Imagery call", + "type": "object", + "format": "file", + "readOnly": true + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/GetRouteDirections.json b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/GetRouteDirections.json new file mode 100644 index 000000000000..a5937068ffe5 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/GetRouteDirections.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "52.50931,13.42936:52.50274,13.43872", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "formatVersion": "0.0.12", + "routes": [ + { + "summary": { + "lengthInMeters": 1147, + "travelTimeInSeconds": 162, + "trafficDelayInSeconds": 0, + "departureTime": "2017-09-07T16:56:58+00:00", + "arrivalTime": "2017-09-07T16:59:40+00:00" + }, + "legs": [ + { + "summary": { + "lengthInMeters": 1147, + "travelTimeInSeconds": 162, + "trafficDelayInSeconds": 0, + "departureTime": "2017-09-07T16:56:58+00:00", + "arrivalTime": "2017-09-07T16:59:40+00:00" + }, + "points": [ + { + "latitude": 52.50931, + "longitude": 13.42937 + }, + { + "latitude": 52.50904, + "longitude": 13.42912 + }, + { + "latitude": 52.50894, + "longitude": 13.42904 + }, + { + "latitude": 52.50867, + "longitude": 13.42879 + }, + { + "latitude": 52.5084, + "longitude": 13.42857 + }, + { + "latitude": 52.50791, + "longitude": 13.42824 + }, + { + "latitude": 52.50757, + "longitude": 13.42772 + }, + { + "latitude": 52.50735, + "longitude": 13.42823 + }, + { + "latitude": 52.5073, + "longitude": 13.42836 + }, + { + "latitude": 52.50573, + "longitude": 13.43194 + }, + { + "latitude": 52.50512, + "longitude": 13.43336 + }, + { + "latitude": 52.50464, + "longitude": 13.43451 + }, + { + "latitude": 52.5045, + "longitude": 13.43481 + }, + { + "latitude": 52.50443, + "longitude": 13.43498 + }, + { + "latitude": 52.50343, + "longitude": 13.43737 + }, + { + "latitude": 52.50274, + "longitude": 13.43872 + } + ] + } + ], + "sections": [ + { + "startPointIndex": 0, + "endPointIndex": 15, + "sectionType": "TRAVEL_MODE", + "travelMode": "car" + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/GetRouteRange.json b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/GetRouteRange.json new file mode 100644 index 000000000000..a013418cbf93 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/GetRouteRange.json @@ -0,0 +1,269 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "50.97452,5.86605", + "subscription-key": "[subscription-key]", + "timeBudgetInSec": 6000 + }, + "responses": { + "200": { + "body": { + "formatVersion": "0.0.1", + "reachableRange": { + "center": { + "latitude": 50.9745, + "longitude": 5.86605 + }, + "boundary": [ + { + "latitude": 52.03704, + "longitude": 5.73602 + }, + { + "latitude": 52.09456, + "longitude": 5.59435 + }, + { + "latitude": 52.16815, + "longitude": 5.42279 + }, + { + "latitude": 52.25047, + "longitude": 5.21276 + }, + { + "latitude": 52.21374, + "longitude": 5.15355 + }, + { + "latitude": 52.25674, + "longitude": 4.96687 + }, + { + "latitude": 52.07834, + "longitude": 4.739 + }, + { + "latitude": 52.05647, + "longitude": 4.72513 + }, + { + "latitude": 51.94553, + "longitude": 4.53237 + }, + { + "latitude": 51.70119, + "longitude": 4.31165 + }, + { + "latitude": 51.5837, + "longitude": 4.28917 + }, + { + "latitude": 51.48463, + "longitude": 3.82685 + }, + { + "latitude": 51.21096, + "longitude": 3.62838 + }, + { + "latitude": 50.681399999999996, + "longitude": 3.89244 + }, + { + "latitude": 50.66791, + "longitude": 3.93493 + }, + { + "latitude": 50.49042, + "longitude": 3.98156 + }, + { + "latitude": 50.30944, + "longitude": 4.47995 + }, + { + "latitude": 50.24448, + "longitude": 4.60502 + }, + { + "latitude": 50.24467, + "longitude": 4.89999 + }, + { + "latitude": 50.08735, + "longitude": 5.04206 + }, + { + "latitude": 49.99214, + "longitude": 5.23042 + }, + { + "latitude": 49.88478, + "longitude": 5.40994 + }, + { + "latitude": 49.85797, + "longitude": 5.46178 + }, + { + "latitude": 49.86279, + "longitude": 5.7196 + }, + { + "latitude": 49.83259, + "longitude": 5.74151 + }, + { + "latitude": 50.22239, + "longitude": 5.9387 + }, + { + "latitude": 50.0011, + "longitude": 6.08535 + }, + { + "latitude": 50.04616, + "longitude": 6.12089 + }, + { + "latitude": 50.09472, + "longitude": 6.28373 + }, + { + "latitude": 49.95863, + "longitude": 6.51654 + }, + { + "latitude": 50.00485, + "longitude": 6.61034 + }, + { + "latitude": 50.00587, + "longitude": 6.70295 + }, + { + "latitude": 50.2947, + "longitude": 6.65865 + }, + { + "latitude": 50.36903, + "longitude": 6.79276 + }, + { + "latitude": 50.31614, + "longitude": 7.32163 + }, + { + "latitude": 50.36737, + "longitude": 7.58782 + }, + { + "latitude": 50.46919, + "longitude": 7.7626 + }, + { + "latitude": 50.96246, + "longitude": 7.9826 + }, + { + "latitude": 51.07086, + "longitude": 7.55924 + }, + { + "latitude": 51.36614, + "longitude": 7.58138 + }, + { + "latitude": 51.52015, + "longitude": 7.67861 + }, + { + "latitude": 51.65781, + "longitude": 7.35175 + }, + { + "latitude": 51.81916, + "longitude": 7.21664 + }, + { + "latitude": 51.9587, + "longitude": 7.0467 + }, + { + "latitude": 51.82713, + "longitude": 6.67267 + }, + { + "latitude": 51.81133, + "longitude": 6.48424 + }, + { + "latitude": 51.9368, + "longitude": 6.27316 + }, + { + "latitude": 52.01701, + "longitude": 6.14452 + }, + { + "latitude": 52.20847, + "longitude": 6.09312 + }, + { + "latitude": 52.23705, + "longitude": 6.01297 + } + ] + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostMatrixRouteCalculate.json b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostMatrixRouteCalculate.json new file mode 100644 index 000000000000..7457cd7329dd --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostMatrixRouteCalculate.json @@ -0,0 +1,152 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "routeType": "shortest", + "routeMatrixBody": { + "origins": { + "type": "MultiPoint", + "coordinates": [ + [ + 4.85106, + 52.36006 + ], + [ + 4.85056, + 52.36187 + ] + ] + }, + "destinations": { + "type": "MultiPoint", + "coordinates": [ + [ + 4.85003, + 52.36241 + ], + [ + 13.42937, + 52.50931 + ] + ] + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "formatVersion": "0.0.1", + "matrix": [ + [ + { + "statusCode": 200, + "response": { + "routeSummary": { + "lengthInMeters": 495, + "travelTimeInSeconds": 134, + "trafficDelayInSeconds": 0, + "departureTime": "2018-07-27T22:55:29+00:00", + "arrivalTime": "2018-07-27T22:57:43+00:00" + } + } + }, + { + "statusCode": 200, + "response": { + "routeSummary": { + "lengthInMeters": 647651, + "travelTimeInSeconds": 26835, + "trafficDelayInSeconds": 489, + "departureTime": "2018-07-27T22:55:29+00:00", + "arrivalTime": "2018-07-28T06:22:44+00:00" + } + } + } + ], + [ + { + "statusCode": 200, + "response": { + "routeSummary": { + "lengthInMeters": 338, + "travelTimeInSeconds": 104, + "trafficDelayInSeconds": 0, + "departureTime": "2018-07-27T22:55:29+00:00", + "arrivalTime": "2018-07-27T22:57:13+00:00" + } + } + }, + { + "statusCode": 200, + "response": { + "routeSummary": { + "lengthInMeters": 647494, + "travelTimeInSeconds": 26763, + "trafficDelayInSeconds": 469, + "departureTime": "2018-07-27T22:55:29+00:00", + "arrivalTime": "2018-07-28T06:21:32+00:00" + } + } + } + ] + ], + "summary": { + "successfulRoutes": 4, + "totalRoutes": 4 + } + } + }, + "202": { + "headers": { + "Location": "New URL to check the status of the long running request." + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostRouteDirections.json b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostRouteDirections.json new file mode 100644 index 000000000000..898a94a17dd5 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostRouteDirections.json @@ -0,0 +1,234 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "52.50931,13.42936:52.50274,13.43872", + "subscription-key": "[subscription-key]", + "routeDirectionsRequestBody": { + "supportingPoints": { + "type": "GeometryCollection", + "geometries": [ + { + "type": "Point", + "coordinates": [ + 13.42936, + 52.5093 + ] + }, + { + "type": "Point", + "coordinates": [ + 13.42859, + 52.50844 + ] + } + ] + }, + "avoidVignette": [ + "AUS", + "CHE" + ], + "avoidAreas": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -122.39456176757811, + 47.489368981370724 + ], + [ + -122.00454711914061, + 47.489368981370724 + ], + [ + -122.00454711914061, + 47.65151268066222 + ], + [ + -122.39456176757811, + 47.65151268066222 + ], + [ + -122.39456176757811, + 47.489368981370724 + ] + ] + ], + [ + [ + [ + 100.0, + 0.0 + ], + [ + 101.0, + 0.0 + ], + [ + 101.0, + 1.0 + ], + [ + 100.0, + 1.0 + ], + [ + 100.0, + 0.0 + ] + ] + ] + ] + } + } + }, + "responses": { + "200": { + "body": { + "formatVersion": "0.0.12", + "routes": [ + { + "summary": { + "lengthInMeters": 1147, + "travelTimeInSeconds": 162, + "trafficDelayInSeconds": 0, + "departureTime": "2017-09-07T16:56:58+00:00", + "arrivalTime": "2017-09-07T16:59:40+00:00" + }, + "legs": [ + { + "summary": { + "lengthInMeters": 1147, + "travelTimeInSeconds": 162, + "trafficDelayInSeconds": 0, + "departureTime": "2017-09-07T16:56:58+00:00", + "arrivalTime": "2017-09-07T16:59:40+00:00" + }, + "points": [ + { + "latitude": 52.50931, + "longitude": 13.42937 + }, + { + "latitude": 52.50904, + "longitude": 13.42912 + }, + { + "latitude": 52.50894, + "longitude": 13.42904 + }, + { + "latitude": 52.50867, + "longitude": 13.42879 + }, + { + "latitude": 52.5084, + "longitude": 13.42857 + }, + { + "latitude": 52.50791, + "longitude": 13.42824 + }, + { + "latitude": 52.50757, + "longitude": 13.42772 + }, + { + "latitude": 52.50735, + "longitude": 13.42823 + }, + { + "latitude": 52.5073, + "longitude": 13.42836 + }, + { + "latitude": 52.50573, + "longitude": 13.43194 + }, + { + "latitude": 52.50512, + "longitude": 13.43336 + }, + { + "latitude": 52.50464, + "longitude": 13.43451 + }, + { + "latitude": 52.5045, + "longitude": 13.43481 + }, + { + "latitude": 52.50443, + "longitude": 13.43498 + }, + { + "latitude": 52.50343, + "longitude": 13.43737 + }, + { + "latitude": 52.50274, + "longitude": 13.43872 + } + ] + } + ], + "sections": [ + { + "startPointIndex": 0, + "endPointIndex": 15, + "sectionType": "TRAVEL_MODE", + "travelMode": "car" + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostRouteDirectionsBatch.json b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostRouteDirectionsBatch.json new file mode 100644 index 000000000000..185d11981d0a --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/examples/PostRouteDirectionsBatch.json @@ -0,0 +1,212 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "routeDirectionsBatchRequestBody": { + "batchItems": [ + { + "query": "?query=47.639987,-122.128384:47.621252,-122.184408:47.596437,-122.332000&routeType=fastest&travelMode=car&maxAlternatives=99" + }, + { + "query": "?query=47.620659,-122.348934:47.610101,-122.342015&travelMode=bicycle&routeType=eco&traffic=false" + }, + { + "query": "?query=40.759856,-73.985108:40.771136,-73.973506&travelMode=pedestrian&routeType=shortest" + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "batchItems": [ + { + "statusCode": 400, + "response": { + "error": { + "code": "400 BadRequest", + "message": "maxAlternatives parameter value should be between 0 and 5 inclusive" + } + } + }, + { + "statusCode": 200, + "response": { + "formatVersion": "0.0.12", + "routes": [ + { + "summary": { + "lengthInMeters": 1754, + "travelTimeInSeconds": 386, + "trafficDelayInSeconds": 0, + "departureTime": "2019-06-21T22:56:23+00:00", + "arrivalTime": "2019-06-21T23:02:49+00:00" + }, + "legs": [ + { + "summary": { + "lengthInMeters": 1754, + "travelTimeInSeconds": 386, + "trafficDelayInSeconds": 0, + "departureTime": "2019-06-21T22:56:23+00:00", + "arrivalTime": "2019-06-21T23:02:49+00:00" + }, + "points": [ + { + "latitude": 47.62094, + "longitude": -122.34892 + }, + { + "latitude": 47.62094, + "longitude": -122.3485 + }, + { + "latitude": 47.62095, + "longitude": -122.3476 + }, + { + "latitude": 47.60995, + "longitude": -122.34174 + }, + { + "latitude": 47.61011, + "longitude": -122.342 + } + ] + } + ], + "sections": [ + { + "startPointIndex": 0, + "endPointIndex": 44, + "sectionType": "TRAVEL_MODE", + "travelMode": "bicycle" + } + ] + } + ] + } + }, + { + "statusCode": 200, + "response": { + "formatVersion": "0.0.12", + "routes": [ + { + "summary": { + "lengthInMeters": 1772, + "travelTimeInSeconds": 1276, + "trafficDelayInSeconds": 0, + "departureTime": "2019-06-21T22:56:23+00:00", + "arrivalTime": "2019-06-21T23:17:38+00:00" + }, + "legs": [ + { + "summary": { + "lengthInMeters": 1772, + "travelTimeInSeconds": 1276, + "trafficDelayInSeconds": 0, + "departureTime": "2019-06-21T22:56:23+00:00", + "arrivalTime": "2019-06-21T23:17:38+00:00" + }, + "points": [ + { + "latitude": 40.75982, + "longitude": -73.98493 + }, + { + "latitude": 40.7601, + "longitude": -73.98483 + }, + { + "latitude": 40.75984, + "longitude": -73.98417 + }, + { + "latitude": 40.76047, + "longitude": -73.9837 + }, + { + "latitude": 40.77095, + "longitude": -73.9736 + }, + { + "latitude": 40.77114, + "longitude": -73.97356 + } + ] + } + ], + "sections": [ + { + "startPointIndex": 0, + "endPointIndex": 47, + "sectionType": "TRAVEL_MODE", + "travelMode": "pedestrian" + } + ] + } + ] + } + } + ], + "summary": { + "successfulRequests": 2, + "totalRequests": 3 + } + } + }, + "202": { + "headers": { + "Location": "URL to download the results of the long-running batch request." + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/route.json b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/route.json new file mode 100644 index 000000000000..20db41da9378 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Route/preview/1.0/route.json @@ -0,0 +1,2845 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Route Service", + "version": "1.0", + "description": "Azure Maps Route REST APIs" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "202": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + }, + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "202Async": { + "description": "**Supported only for async request.**\nRequest Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "TextFormat": { + "name": "format", + "description": "Desired format of the response. Value can be either _json_ or _xml_.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json", + "xml" + ], + "x-ms-enum": { + "name": "TextFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + }, + { + "value": "xml", + "description": "[The Extensible Markup Language](https://www.w3.org/TR/xml/)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "VehicleLoadType": { + "name": "vehicleLoadType", + "in": "query", + "description": "Types of cargo that may be classified as hazardous materials and restricted from some roads. Available vehicleLoadType values are US Hazmat classes 1 through 9, plus generic classifications for use in other countries. Values beginning with USHazmat are for US routing while otherHazmat should be used for all other countries. vehicleLoadType can be specified multiple times. This parameter is currently only considered for travelMode=truck.", + "required": false, + "type": "string", + "enum": [ + "USHazmatClass1", + "USHazmatClass2", + "USHazmatClass3", + "USHazmatClass4", + "USHazmatClass5", + "USHazmatClass6", + "USHazmatClass7", + "USHazmatClass8", + "USHazmatClass9", + "otherHazmatExplosive", + "otherHazmatGeneral", + "otherHazmatHarmfulToWater" + ], + "x-ms-enum": { + "name": "VehicleLoadType", + "modelAsString": false, + "values": [ + { + "value": "USHazmatClass1", + "description": "Explosives" + }, + { + "value": "USHazmatClass2", + "description": "Compressed gas" + }, + { + "value": "USHazmatClass3", + "description": "Flammable liquids" + }, + { + "value": "USHazmatClass4", + "description": "Flammable solids" + }, + { + "value": "USHazmatClass5", + "description": "Oxidizers" + }, + { + "value": "USHazmatClass6", + "description": "Poisons" + }, + { + "value": "USHazmatClass7", + "description": "Radioactive" + }, + { + "value": "USHazmatClass8", + "description": "Corrosives" + }, + { + "value": "USHazmatClass9", + "description": "Miscellaneous" + }, + { + "value": "otherHazmatExplosive", + "description": "Explosives" + }, + { + "value": "otherHazmatGeneral", + "description": "Miscellaneous" + }, + { + "value": "otherHazmatHarmfulToWater", + "description": "Harmful to water" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "RouteType": { + "name": "routeType", + "in": "query", + "description": "The type of route requested.", + "required": false, + "type": "string", + "default": "fastest", + "enum": [ + "fastest", + "shortest", + "eco", + "thrilling" + ], + "x-ms-enum": { + "name": "RouteType", + "modelAsString": false, + "values": [ + { + "value": "fastest", + "description": "The fastest route." + }, + { + "value": "shortest", + "description": "The shortest route by distance." + }, + { + "value": "eco", + "description": "A route balanced by economy and speed." + }, + { + "value": "thrilling", + "description": "Includes interesting or challenging roads and uses as few motorways as possible. You can choose the level of turns included and also the degree of hilliness. See the hilliness and windingness parameters for how to set this. There is a limit of 900 km on routes planned with `routeType`=thrilling" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "Windingness": { + "name": "windingness", + "in": "query", + "description": "Level of turns for thrilling route. This parameter can only be used in conjunction with `routeType`=thrilling.", + "required": false, + "type": "string", + "default": "normal", + "enum": [ + "low", + "normal", + "high" + ], + "x-ms-enum": { + "name": "Windingness", + "modelAsString": false, + "values": [ + { + "value": "low", + "description": "low" + }, + { + "value": "normal", + "description": "normal" + }, + { + "value": "high", + "description": "high" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "Hilliness": { + "name": "hilliness", + "in": "query", + "description": "Degree of hilliness for thrilling route. This parameter can only be used in conjunction with `routeType`=thrilling.", + "required": false, + "type": "string", + "default": "normal", + "enum": [ + "low", + "normal", + "high" + ], + "x-ms-enum": { + "name": "Hilliness", + "modelAsString": false, + "values": [ + { + "value": "low", + "description": "low" + }, + { + "value": "normal", + "description": "normal" + }, + { + "value": "high", + "description": "high" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "TravelMode": { + "name": "travelMode", + "in": "query", + "description": "The mode of travel for the requested route. If not defined, default is 'car'. Note that the requested travelMode may not be available for the entire route. Where the requested travelMode is not available for a particular section, the travelMode element of the response for that section will be \"other\". Note that travel modes bus, motorcycle, taxi and van are BETA functionality. Full restriction data is not available in all areas. In **calculateReachableRange** requests, the values bicycle and pedestrian must not be used.", + "required": false, + "type": "string", + "default": "car", + "enum": [ + "car", + "truck", + "taxi", + "bus", + "van", + "motorcycle", + "bicycle", + "pedestrian" + ], + "x-ms-enum": { + "name": "TravelMode", + "modelAsString": false, + "values": [ + { + "value": "car", + "description": "The returned routes are optimized for cars." + }, + { + "value": "truck", + "description": "The returned routes are optimized for commercial vehicles, like for trucks." + }, + { + "value": "taxi", + "description": "The returned routes are optimized for taxis. BETA functionality." + }, + { + "value": "bus", + "description": "The returned routes are optimized for buses, including the use of bus only lanes. BETA functionality." + }, + { + "value": "van", + "description": "The returned routes are optimized for vans. BETA functionality." + }, + { + "value": "motorcycle", + "description": "The returned routes are optimized for motorcycles. BETA functionality." + }, + { + "value": "bicycle", + "description": "The returned routes are optimized for bicycles, including use of bicycle lanes." + }, + { + "value": "pedestrian", + "description": "The returned routes are optimized for pedestrians, including the use of sidewalks." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "Avoid": { + "name": "avoid", + "in": "query", + "description": "Specifies something that the route calculation should try to avoid when determining the route. Can be specified multiple times in one request, for example, '&avoid=motorways&avoid=tollRoads&avoid=ferries'. In calculateReachableRange requests, the value alreadyUsedRoads must not be used.", + "required": false, + "type": "string", + "enum": [ + "tollRoads", + "motorways", + "ferries", + "unpavedRoads", + "carpools", + "alreadyUsedRoads", + "borderCrossings" + ], + "x-ms-enum": { + "name": "Avoid", + "modelAsString": false, + "values": [ + { + "value": "tollRoads", + "description": "Avoids toll roads." + }, + { + "value": "motorways", + "description": "Avoids motorways" + }, + { + "value": "ferries", + "description": "Avoids ferries" + }, + { + "value": "unpavedRoads", + "description": "Avoids unpaved roads" + }, + { + "value": "carpools", + "description": "Avoids routes that require the use of carpool (HOV/High Occupancy Vehicle) lanes." + }, + { + "value": "alreadyUsedRoads", + "description": "Avoids using the same road multiple times. Most useful in conjunction with `routeType`=thrilling." + }, + { + "value": "borderCrossings", + "description": "Avoids border crossings in route calculation." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "VehicleEngineType": { + "name": "vehicleEngineType", + "in": "query", + "description": "Engine type of the vehicle. When a detailed Consumption Model is specified, it must be consistent with the value of **vehicleEngineType**.", + "required": false, + "type": "string", + "enum": [ + "combustion", + "electric" + ], + "default": "combustion", + "x-ms-enum": { + "name": "VehicleEngineType", + "modelAsString": false, + "values": [ + { + "value": "combustion", + "description": "Internal combustion engine." + }, + { + "value": "electric", + "description": "Electric engine." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "ConstantSpeedConsumptionInLitersPerHundredkm": { + "name": "constantSpeedConsumptionInLitersPerHundredkm", + "in": "query", + "description": "\n\nSpecifies the speed-dependent component of consumption.\n\nProvided as an unordered list of colon-delimited speed & consumption-rate pairs. The list defines points on a consumption curve. Consumption rates for speeds not in the list are found as follows:\n\n * by linear interpolation, if the given speed lies in between two speeds in the list\n\n * by linear extrapolation otherwise, assuming a constant (ΔConsumption/ΔSpeed) determined by the nearest two points in the list\n\nThe list must contain between 1 and 25 points (inclusive), and may not contain duplicate points for the same speed. If it only contains a single point, then the consumption rate of that point is used without further processing.\n\nConsumption specified for the largest speed must be greater than or equal to that of the penultimate largest speed. This ensures that extrapolation does not lead to negative consumption rates.\n\nSimilarly, consumption values specified for the two smallest speeds in the list cannot lead to a negative consumption rate for any smaller speed.\n\nThe valid range for the consumption values(expressed in l/100km) is between 0.01 and 100000.0.\n\nSensible Values : 50,6.3:130,11.5\n\n**Note** : This parameter is required for **The Combustion Consumption Model**.", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "CurrentFuelInLiters": { + "name": "currentFuelInLiters", + "in": "query", + "description": "Specifies the current supply of fuel in liters.\n\nSensible Values : 55", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "AuxiliaryPowerInLitersPerHour": { + "name": "auxiliaryPowerInLitersPerHour", + "in": "query", + "description": "Specifies the amount of fuel consumed for sustaining auxiliary systems of the vehicle, in liters per hour.\n\nIt can be used to specify consumption due to devices and systems such as AC systems, radio, heating, etc.\n\nSensible Values : 0.2", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "FuelEnergyDensityInMJoulesPerLiter": { + "name": "fuelEnergyDensityInMJoulesPerLiter", + "in": "query", + "description": "Specifies the amount of chemical energy stored in one liter of fuel in megajoules (MJ). It is used in conjunction with the ***Efficiency** parameters for conversions between saved or consumed energy and fuel. For example, energy density is 34.2 MJ/l for gasoline, and 35.8 MJ/l for Diesel fuel.\n\nThis parameter is required if any ***Efficiency** parameter is set.\n\nSensible Values : 34.2", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "AccelerationEfficiency": { + "name": "accelerationEfficiency", + "in": "query", + "description": "Specifies the efficiency of converting chemical energy stored in fuel to kinetic energy when the vehicle accelerates _(i.e. KineticEnergyGained/ChemicalEnergyConsumed). ChemicalEnergyConsumed_ is obtained by converting consumed fuel to chemical energy using **fuelEnergyDensityInMJoulesPerLiter**.\n\nMust be paired with **decelerationEfficiency**.\n\nThe range of values allowed are 0.0 to 1/**decelerationEfficiency**.\n\nSensible Values : for **Combustion Model** : 0.33, for **Electric Model** : 0.66", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "DecelerationEfficiency": { + "name": "decelerationEfficiency", + "in": "query", + "description": "Specifies the efficiency of converting kinetic energy to saved (not consumed) fuel when the vehicle decelerates _(i.e. ChemicalEnergySaved/KineticEnergyLost). ChemicalEnergySaved_ is obtained by converting saved (not consumed) fuel to energy using **fuelEnergyDensityInMJoulesPerLiter**.\n\nMust be paired with **accelerationEfficiency**.\n\nThe range of values allowed are 0.0 to 1/**accelerationEfficiency**.\n\nSensible Values : for **Combustion Model** : 0.83, for **Electric Model** : 0.91", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "UphillEfficiency": { + "name": "uphillEfficiency", + "in": "query", + "description": "Specifies the efficiency of converting chemical energy stored in fuel to potential energy when the vehicle gains elevation _(i.e. PotentialEnergyGained/ChemicalEnergyConsumed). ChemicalEnergyConsumed_ is obtained by converting consumed fuel to chemical energy using **fuelEnergyDensityInMJoulesPerLiter**.\n\nMust be paired with **downhillEfficiency**.\n\nThe range of values allowed are 0.0 to 1/**downhillEfficiency**.\n\nSensible Values : for **Combustion Model** : 0.27, for **Electric Model** : 0.74", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "DownhillEfficiency": { + "name": "downhillEfficiency", + "in": "query", + "description": "Specifies the efficiency of converting potential energy to saved (not consumed) fuel when the vehicle loses elevation _(i.e. ChemicalEnergySaved/PotentialEnergyLost). ChemicalEnergySaved_ is obtained by converting saved (not consumed) fuel to energy using **fuelEnergyDensityInMJoulesPerLiter**.\n\nMust be paired with **uphillEfficiency**.\n\nThe range of values allowed are 0.0 to 1/**uphillEfficiency**.\n\nSensible Values : for **Combustion Model** : 0.51, for **Electric Model** : 0.73", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "ConstantSpeedConsumptionInkWhPerHundredkm": { + "name": "constantSpeedConsumptionInkWhPerHundredkm", + "in": "query", + "description": "Specifies the speed-dependent component of consumption.\n\nProvided as an unordered list of speed/consumption-rate pairs. The list defines points on a consumption curve. Consumption rates for speeds not in the list are found as follows:\n\n* by linear interpolation, if the given speed lies in between two speeds in the list\n\n* by linear extrapolation otherwise, assuming a constant (ΔConsumption/ΔSpeed) determined by the nearest two points in the list\n\nThe list must contain between 1 and 25 points (inclusive), and may not contain duplicate points for the same speed. If it only contains a single point, then the consumption rate of that point is used without further processing.\n\nConsumption specified for the largest speed must be greater than or equal to that of the penultimate largest speed. This ensures that extrapolation does not lead to negative consumption rates.\n\nSimilarly, consumption values specified for the two smallest speeds in the list cannot lead to a negative consumption rate for any smaller speed.\n\nThe valid range for the consumption values(expressed in kWh/100km) is between 0.01 and 100000.0.\n\nSensible Values : 50,8.2:130,21.3\n\nThis parameter is required for **Electric consumption model**.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "CurrentChargeInkWh": { + "name": "currentChargeInkWh", + "in": "query", + "description": "Specifies the current electric energy supply in kilowatt hours (kWh).\n\nThis parameter co-exists with **maxChargeInkWh** parameter.\n\nThe range of values allowed are 0.0 to **maxChargeInkWh**.\n\nSensible Values : 43", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "MaxChargeInkWh": { + "name": "maxChargeInkWh", + "in": "query", + "description": "Specifies the maximum electric energy supply in kilowatt hours (kWh) that may be stored in the vehicle's battery.\n\nThis parameter co-exists with **currentChargeInkWh** parameter.\n\nMinimum value has to be greater than or equal to **currentChargeInkWh**.\n\nSensible Values : 85", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AuxiliaryPowerInkW": { + "name": "auxiliaryPowerInkW", + "in": "query", + "description": "Specifies the amount of power consumed for sustaining auxiliary systems, in kilowatts (kW).\n\nIt can be used to specify consumption due to devices and systems such as AC systems, radio, heating, etc.\n\nSensible Values : 1.7", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VehicleWeightMatrix": { + "name": "vehicleWeight", + "in": "query", + "description": "Weight of the vehicle in kilograms.", + "required": false, + "type": "integer", + "default": 0, + "x-ms-parameter-location": "method" + }, + "VehicleWeight": { + "name": "vehicleWeight", + "in": "query", + "description": "Weight of the vehicle in kilograms.\n\n* It is mandatory if any of the *Efficiency parameters are set.\n\n* It must be strictly positive when used in the context of the Consumption Model. Weight restrictions are considered.\n\n* If no detailed **Consumption Model** is specified and the value of **vehicleWeight** is non-zero, then weight restrictions are considered.\n\n* In all other cases, this parameter is ignored.\n\nSensible Values : for **Combustion Model** : 1600, for **Electric Model** : 1900", + "required": false, + "type": "integer", + "default": 0, + "x-ms-parameter-location": "method" + }, + "VehicleMaxSpeed": { + "name": "vehicleMaxSpeed", + "in": "query", + "description": "Maximum speed of the vehicle in km/hour. The max speed in the vehicle profile is used to check whether a vehicle is allowed on motorways. \n\n* A value of 0 means that an appropriate value for the vehicle will be determined and applied during route planning.\n\n* A non-zero value may be overridden during route planning. For example, the current traffic flow is 60 km/hour. If the vehicle maximum speed is set to 50 km/hour, the routing engine will consider 60 km/hour as this is the current situation. If the maximum speed of the vehicle is provided as 80 km/hour but the current traffic flow is 60 km/hour, then routing engine will again use 60 km/hour.", + "required": false, + "type": "integer", + "default": 0, + "x-ms-parameter-location": "method" + }, + "VehicleLength": { + "name": "vehicleLength", + "in": "query", + "description": "Length of the vehicle in meters. A value of 0 means that length restrictions are not considered.", + "required": false, + "type": "number", + "format": "float", + "default": 0, + "x-ms-parameter-location": "method" + }, + "VehicleHeight": { + "name": "vehicleHeight", + "in": "query", + "description": "Height of the vehicle in meters. A value of 0 means that height restrictions are not considered.", + "required": false, + "type": "number", + "format": "float", + "default": 0, + "x-ms-parameter-location": "method" + }, + "VehicleWidth": { + "name": "vehicleWidth", + "in": "query", + "description": "Width of the vehicle in meters. A value of 0 means that width restrictions are not considered.", + "required": false, + "type": "number", + "format": "float", + "default": 0, + "x-ms-parameter-location": "method" + }, + "VehicleAxleWeight": { + "name": "vehicleAxleWeight", + "in": "query", + "description": "Weight per axle of the vehicle in kg. A value of 0 means that weight restrictions per axle are not considered.", + "required": false, + "type": "integer", + "default": 0, + "x-ms-parameter-location": "method" + }, + "VehicleCommercial": { + "name": "vehicleCommercial", + "in": "query", + "description": "Vehicle is used for commercial purposes and thus may not be allowed to drive on some roads.", + "required": false, + "type": "boolean", + "default": false, + "x-ms-parameter-location": "method" + }, + "DepartAt": { + "name": "departAt", + "in": "query", + "description": "The date and time of departure from the origin point. Departure times apart from now must be specified as a dateTime. When a time zone offset is not specified, it will be assumed to be that of the origin point. The departAt value must be in the future in the date-time format (1996-12-19T16:39:57-08:00).", + "type": "string", + "format": "date-time", + "required": false, + "x-ms-parameter-location": "method" + }, + "ArriveAt": { + "name": "arriveAt", + "in": "query", + "description": "The date and time of arrival at the destination point. It must be specified as a dateTime. When a time zone offset is not specified it will be assumed to be that of the destination point. The arriveAt value must be in the future. The arriveAt parameter cannot be used in conjunction with departAt, minDeviationDistance or minDeviationTime.", + "type": "string", + "format": "date-time", + "required": false, + "x-ms-parameter-location": "method" + }, + "SectionType": { + "name": "sectionType", + "in": "query", + "description": "Specifies which of the section types is reported in the route response.

For example if sectionType = pedestrian the sections which are suited for pedestrians only are returned. Multiple types can be used. The default sectionType refers to the travelMode input. By default travelMode is set to car", + "required": false, + "type": "string", + "default": "travelMode", + "enum": [ + "carTrain", + "country", + "ferry", + "motorway", + "pedestrian", + "tollRoad", + "tollVignette", + "traffic", + "travelMode", + "tunnel" + ], + "x-ms-enum": { + "name": "SectionType", + "modelAsString": false, + "values": [ + { + "value": "carTrain", + "description": "Get sections if the route includes car trains." + }, + { + "value": "country", + "description": "Countries the route has parts in." + }, + { + "value": "ferry", + "description": "Get sections if the route includes ferries." + }, + { + "value": "motorway", + "description": "Get sections if the route includes motorways." + }, + { + "value": "pedestrian", + "description": "Get sections which are suited for pedestrians." + }, + { + "value": "tollRoad", + "description": "Get sections which require a toll to be payed." + }, + { + "value": "tollVignette", + "description": "Get sections which require a toll vignette to be present." + }, + { + "value": "traffic", + "description": "Get sections which contain traffic information." + }, + { + "value": "travelMode", + "description": "Get sections in relation to the request parameter `travelMode`." + }, + { + "value": "tunnel", + "description": "Get sections if the route includes tunnels." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "ComputeBestOrder": { + "name": "computeBestOrder", + "in": "query", + "description": "Re-order the route waypoints using a fast heuristic algorithm to reduce the route length. Yields best results when used in conjunction with routeType _shortest_. Notice that origin and destination are excluded from the optimized waypoint indices. To include origin and destination in the response, please increase all the indices by 1 to account for the origin, and then add the destination as the final index. Possible values are true or false. True computes a better order if possible, but is not allowed to be used in conjunction with maxAlternatives value greater than 0 or in conjunction with circle waypoints. False will use the locations in the given order and not allowed to be used in conjunction with routeRepresentation _none_.", + "required": false, + "type": "boolean", + "default": false, + "x-ms-parameter-location": "method" + }, + "RouteRepresentation": { + "name": "routeRepresentation", + "in": "query", + "description": "Specifies the representation of the set of routes provided as response. This parameter value can only be used in conjunction with computeBestOrder=true.", + "required": false, + "type": "string", + "default": "polyline", + "enum": [ + "polyline", + "summaryOnly", + "none" + ], + "x-ms-enum": { + "name": "RouteRepresentation", + "modelAsString": false, + "values": [ + { + "value": "polyline", + "description": "Includes route geometry in the response." + }, + { + "value": "summaryOnly", + "description": "Summary as per polyline but excluding the point geometry elements for the routes in the response." + }, + { + "value": "none", + "description": "Includes only the optimized waypoint indices but does not include the route geometry in the response." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "ComputeTravelTimeFor": { + "name": "computeTravelTimeFor", + "in": "query", + "description": "Specifies whether to return additional travel times using different types of traffic information (none, historic, live) as well as the default best-estimate travel time.", + "required": false, + "type": "string", + "default": "none", + "enum": [ + "none", + "all" + ], + "x-ms-enum": { + "name": "ComputeTravelTimeFor", + "modelAsString": false, + "values": [ + { + "value": "none", + "description": "Does not compute additional travel times." + }, + { + "value": "all", + "description": "Computes travel times for all types of traffic information and specifies all results in the fields noTrafficTravelTimeInSeconds, historicTrafficTravelTimeInSeconds and liveTrafficIncidentsTravelTimeInSeconds being included in the summaries in the route response." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "VehicleHeading": { + "name": "vehicleHeading", + "in": "query", + "description": "The directional heading of the vehicle in degrees starting at true North and continuing in clockwise direction. North is 0 degrees, east is 90 degrees, south is 180 degrees, west is 270 degrees. Possible values 0-359", + "required": false, + "type": "integer", + "minimum": 0, + "maximum": 359, + "x-ms-parameter-location": "method" + }, + "Report": { + "name": "report", + "in": "query", + "description": "Specifies which data should be reported for diagnosis purposes. The only possible value is _effectiveSettings_. Reports the effective parameters or data used when calling the API. In the case of defaulted parameters the default will be reflected where the parameter was not specified by the caller.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Traffic": { + "name": "traffic", + "in": "query", + "description": "Possible values: \n * true - Do consider all available traffic information during routing\n * false - Ignore current traffic data during routing. Note that although the current traffic data is ignored \n during routing, the effect of historic traffic on effective road speeds is still incorporated.", + "required": false, + "type": "boolean", + "default": true, + "x-ms-parameter-location": "method" + }, + "AlternativeRouteType": { + "name": "alternativeType", + "in": "query", + "description": "Controls the optimality, with respect to the given planning criteria, of the calculated alternatives compared to the reference route.", + "required": false, + "type": "string", + "default": "anyRoute", + "enum": [ + "anyRoute", + "betterRoute" + ], + "x-ms-enum": { + "name": "AlternativeRouteType", + "modelAsString": false, + "values": [ + { + "value": "anyRoute", + "description": "Allow any alternative route to be returned irrespective of how it compares to the reference route in terms of optimality." + }, + { + "value": "betterRoute", + "description": "Return an alternative route only if it is better than the reference route according to the given planning criteria." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "RouteInstructionsType": { + "name": "instructionsType", + "in": "query", + "description": "If specified, guidance instructions will be returned. Note that the instructionsType parameter cannot be used in conjunction with routeRepresentation=none", + "required": false, + "type": "string", + "enum": [ + "coded", + "text", + "tagged" + ], + "x-ms-enum": { + "name": "RouteInstructionsType", + "modelAsString": false, + "values": [ + { + "value": "coded", + "description": "Returns raw instruction data without human-readable messages." + }, + { + "value": "text", + "description": "Returns raw instructions data with human-readable messages in plain text." + }, + { + "value": "tagged", + "description": "Returns raw instruction data with tagged human-readable messages to permit formatting. A human-readable message is built up from repeatable identified elements. These are tagged to allow client applications to format them correctly. The following message components are tagged when instructionsType=tagged: street, roadNumber, signpostText, exitNumber, roundaboutExitNumber.\n\nExample of tagged 'Turn left' message:​\n\n```\nTurn left onto A4/E19\ntowards Den Haag\n```" + } + ] + }, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/route/matrix/{format}": { + "post": { + "x-publish": true, + "description": "\n\n**Applies to**: S1 pricing tier.\n\nThe Matrix Routing service allows calculation of a matrix of route summaries for a set of routes defined by origin and destination locations by using an asynchronous (async) or synchronous (sync) POST request. For every given origin, the service calculates the cost of routing from that origin to every given destination. The set of origins and the set of destinations can be thought of as the column and row headers of a table and each cell in the table contains the costs of routing from the origin to the destination for that cell. As an example, let's say a food delivery company has 20 drivers and they need to find the closest driver to pick up the delivery from the restaurant. To solve this use case, they can call Matrix Route API.\n\n\nFor each route, the travel times and distances are returned. You can use the computed costs to determine which detailed routes to calculate using the Route Directions API.\n\n\nThe maximum size of a matrix for async request is **700** and for sync request it's **100** (the number of origins multiplied by the number of destinations).\n\n\n\n### Submit Synchronous Route Matrix Request\nIf your scenario requires synchronous requests and the maximum size of the matrix is less than or equal to 100, you might want to make synchronous request. The maximum size of a matrix for this API is **100** (the number of origins multiplied by the number of destinations). With that constraint in mind, examples of possible matrix dimensions are: 10x10, 6x8, 9x8 (it does not need to be square).\n\n```\nPOST https://atlas.microsoft.com/route/matrix/sync/json?api-version=1.0&subscription-key={subscription-key}\n```\n\n### Submit Asynchronous Route Matrix Request\nThe Asynchronous API is appropriate for processing big volumes of relatively complex routing requests. When you make a request by using async request, by default the service returns a 202 response code along a redirect URL in the Location field of the response header. This URL should be checked periodically until the response data or error information is available. If `waitForResults` parameter in the request is set to true, user will get a 200 response if the request is finished under 120 seconds.\n\n\nThe maximum size of a matrix for this API is **700** (the number of origins multiplied by the number of destinations). With that constraint in mind, examples of possible matrix dimensions are: 50x10, 10x10, 28x25. 10x70 (it does not need to be square).\n\n\nThe asynchronous responses are stored for **14** days. The redirect URL returns a 404 response if used after the expiration period.\n\n\n\n\n```\nPOST https://atlas.microsoft.com/route/matrix/json?api-version=1.0&subscription-key={subscription-key}\n```\n\nHere's a typical sequence of asynchronous operations:\n1. Client sends a Route Matrix POST request to Azure Maps\n\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Route Matrix request has been accepted.\n\n > HTTP `Error` - There was an error processing your Route Matrix request. This could either be a 400 Bad Request or any other Error status code.\n\n\n3. If the Matrix Route request was accepted successfully, the Location header in the response contains the URL to download the results of the request. This status URI looks like the following:\n\n ```\n GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}\n ```\n\n\n4. Client issues a GET request on the download URL obtained in Step 3 to download the results\n\n### Download Sync Results\nWhen you make a POST request for Route Matrix Sync API, the service returns 200 response code for successful request and a response array. The response body will contain the data and there will be no possibility to retrieve the results later.\n\n### Download Async Results\nWhen a request issues a `202 Accepted` response, the request is being processed using our async pipeline. You will be given a URL to check the progress of your async request in the location header of the response. This status URI looks like the following:\n```\n GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}\n```\n\nThe URL provided by the location header will return the following responses when a `GET` request is issued.\n\n > HTTP `202 Accepted` - Matrix request was accepted but is still being processed. Please try again in some time.\n\n > HTTP `200 OK` - Matrix request successfully processed. The response body contains all of the results.", + "operationId": "Route_PostRouteMatrix", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "MatrixRoute": { + "$ref": "./examples/PostMatrixRouteCalculate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "waitForResults", + "in": "query", + "description": "Boolean to indicate whether to execute the request synchronously. If set to true, user will get a 200 response if the request is finished under 120 seconds. Otherwise, user will get a 202 response right away. Please refer to the API description for more details on 202 response. **Supported only for async request**.", + "required": false, + "type": "boolean", + "default": false + }, + { + "$ref": "#/parameters/ComputeTravelTimeFor" + }, + { + "$ref": "#/parameters/SectionType" + }, + { + "$ref": "#/parameters/ArriveAt" + }, + { + "$ref": "#/parameters/DepartAt" + }, + { + "$ref": "#/parameters/VehicleAxleWeight" + }, + { + "$ref": "#/parameters/VehicleLength" + }, + { + "$ref": "#/parameters/VehicleHeight" + }, + { + "$ref": "#/parameters/VehicleWidth" + }, + { + "$ref": "#/parameters/VehicleMaxSpeed" + }, + { + "$ref": "#/parameters/VehicleWeightMatrix" + }, + { + "$ref": "#/parameters/Windingness" + }, + { + "$ref": "#/parameters/Hilliness" + }, + { + "$ref": "#/parameters/TravelMode" + }, + { + "$ref": "#/parameters/Avoid" + }, + { + "$ref": "#/parameters/Traffic" + }, + { + "$ref": "#/parameters/RouteType" + }, + { + "$ref": "#/parameters/VehicleLoadType" + }, + { + "name": "routeMatrixBody", + "description": "The matrix of origin and destination coordinates to compute the route distance, travel time and other summary for each cell of the matrix based on the input parameters. The minimum and the maximum cell count supported are 1 and **700** for async and **100** for sync respectively. For example, it can be 35 origins and 20 destinations or 25 origins and 25 destinations for async API.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteMatrixRequestBody" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RouteMatrixResponse" + } + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/route/directions/{format}": { + "get": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\nReturns a route between an origin and a destination, passing through waypoints if they are specified. The route will take into account factors such as current traffic and the typical road speeds on the requested day of the week and time of day.\n\nInformation returned includes the distance, estimated travel time, and a representation of the route geometry. Additional routing information such as optimized waypoint order or turn by turn instructions is also available, depending on the options selected.\n\nRouting service provides a set of parameters for a detailed description of vehicle-specific Consumption Model. Please check [Consumption Model](https://docs.microsoft.com/azure/azure-maps/consumption-model) for detailed explanation of the concepts and parameters involved.", + "operationId": "Route_GetRouteDirections", + "x-ms-examples": { + "GetRouteDirections": { + "$ref": "./examples/GetRouteDirections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "query", + "in": "query", + "description": "The Coordinates through which the route is calculated, delimited by a colon. A minimum of two coordinates is required. The first one is the origin and the last is the destination of the route. Optional coordinates in-between act as WayPoints in the route. You can pass up to 150 WayPoints.", + "required": true, + "type": "string" + }, + { + "name": "maxAlternatives", + "in": "query", + "description": "Number of desired alternative routes to be calculated. Default: 0, minimum: 0 and maximum: 5", + "required": false, + "type": "integer", + "minimum": 0, + "maximum": 5, + "default": 0 + }, + { + "$ref": "#/parameters/AlternativeRouteType" + }, + { + "name": "minDeviationDistance", + "in": "query", + "description": "All alternative routes returned will follow the reference route (see section POST Requests) from the origin point of the calculateRoute request for at least this number of meters. Can only be used when reconstructing a route. The minDeviationDistance parameter cannot be used in conjunction with arriveAt", + "required": false, + "type": "integer", + "default": 0 + }, + { + "$ref": "#/parameters/ArriveAt" + }, + { + "$ref": "#/parameters/DepartAt" + }, + { + "name": "minDeviationTime", + "in": "query", + "description": "All alternative routes returned will follow the reference route (see section POST Requests) from the origin point of the calculateRoute request for at least this number of seconds. Can only be used when reconstructing a route. The minDeviationTime parameter cannot be used in conjunction with arriveAt. Default value is 0. Setting )minDeviationTime_ to a value greater than zero has the following consequences:\n - The origin point of the _calculateRoute_ Request must be on\n (or very near) the input reference route.\n - If this is not the case, an error is returned.\n - However, the origin point does not need to be at the beginning\n of the input reference route (it can be thought of as the current\n vehicle position on the reference route).\n - The reference route, returned as the first route in the _calculateRoute_\n Response, will start at the origin point specified in the _calculateRoute_\n Request. The initial part of the input reference route up until the origin\n point will be excluded from the Response.\n - The values of _minDeviationDistance_ and _minDeviationTime_ determine\n how far alternative routes will be guaranteed to follow the reference\n route from the origin point onwards.\n - The route must use _departAt_.\n - The _vehicleHeading_ is ignored.", + "required": false, + "type": "integer", + "default": 0 + }, + { + "$ref": "#/parameters/RouteInstructionsType" + }, + { + "name": "language", + "in": "query", + "description": "The language parameter determines the language of the guidance messages. Proper nouns (the names of streets, plazas, etc.) are returned in the specified language, or if that is not available, they are returned in an available language that is close to it. Allowed values are (a subset of) the IETF language tags. The currently supported languages are listed in the [Supported languages section](https://docs.microsoft.com/azure/azure-maps/supported-languages).\n\nDefault value: en-GB", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ComputeBestOrder" + }, + { + "$ref": "#/parameters/RouteRepresentation" + }, + { + "$ref": "#/parameters/ComputeTravelTimeFor" + }, + { + "$ref": "#/parameters/VehicleHeading" + }, + { + "$ref": "#/parameters/Report" + }, + { + "$ref": "#/parameters/SectionType" + }, + { + "$ref": "#/parameters/VehicleAxleWeight" + }, + { + "$ref": "#/parameters/VehicleWidth" + }, + { + "$ref": "#/parameters/VehicleHeight" + }, + { + "$ref": "#/parameters/VehicleLength" + }, + { + "$ref": "#/parameters/VehicleMaxSpeed" + }, + { + "$ref": "#/parameters/VehicleWeight" + }, + { + "$ref": "#/parameters/VehicleCommercial" + }, + { + "$ref": "#/parameters/Windingness" + }, + { + "$ref": "#/parameters/Hilliness" + }, + { + "$ref": "#/parameters/TravelMode" + }, + { + "$ref": "#/parameters/Avoid" + }, + { + "$ref": "#/parameters/Traffic" + }, + { + "$ref": "#/parameters/RouteType" + }, + { + "$ref": "#/parameters/VehicleLoadType" + }, + { + "$ref": "#/parameters/VehicleEngineType" + }, + { + "$ref": "#/parameters/ConstantSpeedConsumptionInLitersPerHundredkm" + }, + { + "$ref": "#/parameters/CurrentFuelInLiters" + }, + { + "$ref": "#/parameters/AuxiliaryPowerInLitersPerHour" + }, + { + "$ref": "#/parameters/FuelEnergyDensityInMJoulesPerLiter" + }, + { + "$ref": "#/parameters/AccelerationEfficiency" + }, + { + "$ref": "#/parameters/DecelerationEfficiency" + }, + { + "$ref": "#/parameters/UphillEfficiency" + }, + { + "$ref": "#/parameters/DownhillEfficiency" + }, + { + "$ref": "#/parameters/ConstantSpeedConsumptionInkWhPerHundredkm" + }, + { + "$ref": "#/parameters/CurrentChargeInkWh" + }, + { + "$ref": "#/parameters/MaxChargeInkWh" + }, + { + "$ref": "#/parameters/AuxiliaryPowerInkW" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RouteDirectionsResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "post": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\nReturns a route between an origin and a destination, passing through waypoints if they are specified. The route will take into account factors such as current traffic and the typical road speeds on the requested day of the week and time of day.\n\nInformation returned includes the distance, estimated travel time, and a representation of the route geometry. Additional routing information such as optimized waypoint order or turn by turn instructions is also available, depending on the options selected.\n\nRouting service provides a set of parameters for a detailed description of a vehicle-specific Consumption Model. Please check [Consumption Model](https://docs.microsoft.com/azure/azure-maps/consumption-model) for detailed explanation of the concepts and parameters involved.", + "operationId": "Route_PostRouteDirections", + "x-ms-examples": { + "PostRouteDirections": { + "$ref": "./examples/PostRouteDirections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "query", + "in": "query", + "description": "The Coordinates through which the route is calculated. Needs two coordinates at least. Delimited by colon. First one is the origin and the last is the destination of the route. The coordinates are in a lat,long format. Optional coordinates in between act as WayPoints in the route.", + "required": true, + "type": "string" + }, + { + "name": "maxAlternatives", + "in": "query", + "description": "Number of desired alternative routes to be calculated. Default: 0, minimum: 0 and maximum: 5", + "required": false, + "type": "integer", + "minimum": 0, + "maximum": 5, + "default": 0 + }, + { + "$ref": "#/parameters/AlternativeRouteType" + }, + { + "name": "minDeviationDistance", + "in": "query", + "description": "All alternative routes returned will follow the reference route (see section POST Requests) from the origin point of the calculateRoute request for at least this number of meters. Can only be used when reconstructing a route. The minDeviationDistance parameter cannot be used in conjunction with arriveAt", + "required": false, + "type": "integer", + "default": 0 + }, + { + "name": "minDeviationTime", + "in": "query", + "description": "All alternative routes returned will follow the reference route (see section POST Requests) from the origin point of the calculateRoute request for at least this number of seconds. Can only be used when reconstructing a route. The minDeviationTime parameter cannot be used in conjunction with arriveAt. Default value is 0. Setting )minDeviationTime_ to a value greater than zero has the following consequences:\n - The origin point of the _calculateRoute_ Request must be on\n (or very near) the input reference route.\n - If this is not the case, an error is returned.\n - However, the origin point does not need to be at the beginning\n of the input reference route (it can be thought of as the current\n vehicle position on the reference route).\n - The reference route, returned as the first route in the _calculateRoute_\n Response, will start at the origin point specified in the _calculateRoute_\n Request. The initial part of the input reference route up until the origin\n point will be excluded from the Response.\n - The values of _minDeviationDistance_ and _minDeviationTime_ determine\n how far alternative routes will be guaranteed to follow the reference\n route from the origin point onwards.\n - The route must use _departAt_.\n - The _vehicleHeading_ is ignored.", + "required": false, + "type": "integer", + "default": 0 + }, + { + "$ref": "#/parameters/RouteInstructionsType" + }, + { + "name": "language", + "in": "query", + "description": "The language parameter determines the language of the guidance messages. It does not affect proper nouns (the names of streets, plazas, etc.) It has no effect when instructionsType=coded. Allowed values are (a subset of) the IETF language tags described", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ComputeBestOrder" + }, + { + "$ref": "#/parameters/RouteRepresentation" + }, + { + "$ref": "#/parameters/ComputeTravelTimeFor" + }, + { + "$ref": "#/parameters/VehicleHeading" + }, + { + "$ref": "#/parameters/Report" + }, + { + "$ref": "#/parameters/SectionType" + }, + { + "$ref": "#/parameters/ArriveAt" + }, + { + "$ref": "#/parameters/DepartAt" + }, + { + "$ref": "#/parameters/VehicleAxleWeight" + }, + { + "$ref": "#/parameters/VehicleLength" + }, + { + "$ref": "#/parameters/VehicleHeight" + }, + { + "$ref": "#/parameters/VehicleWidth" + }, + { + "$ref": "#/parameters/VehicleMaxSpeed" + }, + { + "$ref": "#/parameters/VehicleWeight" + }, + { + "$ref": "#/parameters/VehicleCommercial" + }, + { + "$ref": "#/parameters/Windingness" + }, + { + "$ref": "#/parameters/Hilliness" + }, + { + "$ref": "#/parameters/TravelMode" + }, + { + "$ref": "#/parameters/Avoid" + }, + { + "$ref": "#/parameters/Traffic" + }, + { + "$ref": "#/parameters/RouteType" + }, + { + "$ref": "#/parameters/VehicleLoadType" + }, + { + "$ref": "#/parameters/VehicleEngineType" + }, + { + "$ref": "#/parameters/ConstantSpeedConsumptionInLitersPerHundredkm" + }, + { + "$ref": "#/parameters/CurrentFuelInLiters" + }, + { + "$ref": "#/parameters/AuxiliaryPowerInLitersPerHour" + }, + { + "$ref": "#/parameters/FuelEnergyDensityInMJoulesPerLiter" + }, + { + "$ref": "#/parameters/AccelerationEfficiency" + }, + { + "$ref": "#/parameters/DecelerationEfficiency" + }, + { + "$ref": "#/parameters/UphillEfficiency" + }, + { + "$ref": "#/parameters/DownhillEfficiency" + }, + { + "$ref": "#/parameters/ConstantSpeedConsumptionInkWhPerHundredkm" + }, + { + "$ref": "#/parameters/CurrentChargeInkWh" + }, + { + "$ref": "#/parameters/MaxChargeInkWh" + }, + { + "$ref": "#/parameters/AuxiliaryPowerInkW" + }, + { + "name": "routeDirectionsRequestBody", + "description": "Used for reconstructing a route and for calculating zero or more alternative routes to this reference route. The provided sequence of coordinates is used as input for route reconstruction. The alternative routes are calculated between the origin and destination points specified in the base path parameter locations. If both minDeviationDistance and minDeviationTime are set to zero, then these origin and destination points are expected to be at (or very near) the beginning and end of the reference route, respectively. Intermediate locations (waypoints) are not supported when using supportingPoints.\n\nSetting at least one of minDeviationDistance or minDeviationTime to a value greater than zero has the following consequences:\n\n* The origin point of the calculateRoute request must be on (or very near) the input reference route. If this is not the case, an error is returned. However, the origin point does not need to be at the beginning of the input reference route (it can be thought of as the current vehicle position on the reference route).\n* The reference route, returned as the first route in the calculateRoute response, will start at the origin point specified in the calculateRoute request. The initial part of the input reference route up until the origin point will be excluded from the response.\n* The values of minDeviationDistance and minDeviationTime determine how far alternative routes will be guaranteed to follow the reference route from the origin point onwards.\n* The route must use departAt.\n* The vehicleHeading is ignored.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteDirectionsRequestBody" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RouteDirectionsResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/route/range/{format}": { + "get": { + "x-publish": true, + "description": "__Route Range (Isochrone) API__\n\n\n**Applies to**: S1 pricing tier.\n\nThis service will calculate a set of locations that can be reached from the origin point based on fuel, energy, time or distance budget that is specified. A polygon boundary (or Isochrone) is returned in a counterclockwise orientation as well as the precise polygon center which was the result of the origin point.\n\nThe returned polygon can be used for further processing such as [Search Inside Geometry](https://docs.microsoft.com/rest/api/maps/search/postsearchinsidegeometry) to search for POIs within the provided Isochrone.", + "operationId": "Route_GetRouteRange", + "x-ms-examples": { + "GetRouteRange": { + "$ref": "./examples/GetRouteRange.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "query", + "in": "query", + "description": "The Coordinate from which the range calculation should start.", + "required": true, + "type": "string" + }, + { + "name": "fuelBudgetInLiters", + "in": "query", + "description": "Fuel budget in liters that determines maximal range which can be travelled using the specified Combustion Consumption Model.
When fuelBudgetInLiters is used, it is mandatory to specify a detailed Combustion Consumption Model.
Exactly one budget (fuelBudgetInLiters, energyBudgetInkWh, timeBudgetInSec, or distanceBudgetInMeters) must be used.", + "required": false, + "type": "number", + "format": "float" + }, + { + "name": "energyBudgetInkWh", + "in": "query", + "description": "Electric energy budget in kilowatt hours (kWh) that determines maximal range which can be travelled using the specified Electric Consumption Model.
When energyBudgetInkWh is used, it is mandatory to specify a detailed Electric Consumption Model.
Exactly one budget (fuelBudgetInLiters, energyBudgetInkWh, timeBudgetInSec, or distanceBudgetInMeters) must be used.", + "required": false, + "type": "number", + "format": "float" + }, + { + "name": "timeBudgetInSec", + "in": "query", + "description": "Time budget in seconds that determines maximal range which can be travelled using driving time. The Consumption Model will only affect the range when routeType is eco.
Exactly one budget (fuelBudgetInLiters, energyBudgetInkWh, timeBudgetInSec, or distanceBudgetInMeters) must be used.", + "required": false, + "type": "number", + "format": "float" + }, + { + "name": "distanceBudgetInMeters", + "in": "query", + "description": "Distance budget in meters that determines maximal range which can be travelled using driving distance. The Consumption Model will only affect the range when routeType is eco.
Exactly one budget (fuelBudgetInLiters, energyBudgetInkWh, timeBudgetInSec, or distanceBudgetInMeters) must be used.", + "required": false, + "type": "number", + "format": "float" + }, + { + "$ref": "#/parameters/DepartAt" + }, + { + "$ref": "#/parameters/RouteType" + }, + { + "$ref": "#/parameters/Traffic" + }, + { + "$ref": "#/parameters/Avoid" + }, + { + "$ref": "#/parameters/TravelMode" + }, + { + "$ref": "#/parameters/Hilliness" + }, + { + "$ref": "#/parameters/Windingness" + }, + { + "$ref": "#/parameters/VehicleAxleWeight" + }, + { + "$ref": "#/parameters/VehicleWidth" + }, + { + "$ref": "#/parameters/VehicleHeight" + }, + { + "$ref": "#/parameters/VehicleLength" + }, + { + "$ref": "#/parameters/VehicleMaxSpeed" + }, + { + "$ref": "#/parameters/VehicleWeight" + }, + { + "$ref": "#/parameters/VehicleCommercial" + }, + { + "$ref": "#/parameters/VehicleLoadType" + }, + { + "$ref": "#/parameters/VehicleEngineType" + }, + { + "$ref": "#/parameters/ConstantSpeedConsumptionInLitersPerHundredkm" + }, + { + "$ref": "#/parameters/CurrentFuelInLiters" + }, + { + "$ref": "#/parameters/AuxiliaryPowerInLitersPerHour" + }, + { + "$ref": "#/parameters/FuelEnergyDensityInMJoulesPerLiter" + }, + { + "$ref": "#/parameters/AccelerationEfficiency" + }, + { + "$ref": "#/parameters/DecelerationEfficiency" + }, + { + "$ref": "#/parameters/UphillEfficiency" + }, + { + "$ref": "#/parameters/DownhillEfficiency" + }, + { + "$ref": "#/parameters/ConstantSpeedConsumptionInkWhPerHundredkm" + }, + { + "$ref": "#/parameters/CurrentChargeInkWh" + }, + { + "$ref": "#/parameters/MaxChargeInkWh" + }, + { + "$ref": "#/parameters/AuxiliaryPowerInkW" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RouteRangeResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/route/directions/batch/{format}": { + "post": { + "x-publish": true, + "description": "**Route Directions Batch API**\n\n\n**Applies to**: S1 pricing tier.\n\n\n\nThe Route Directions Batch API sends batches of queries to [Route Directions API](https://docs.microsoft.com/en-us/rest/api/maps/route/getroutedirections) using just a single API call. You can call Route Directions Batch API to run either asynchronously (async) or synchronously (sync). The async API allows caller to batch up to **700** queries and sync API up to **100** queries.\n### Submit Synchronous Batch Request\nThe Synchronous API is recommended for lightweight batch requests. When the service receives a request, it will respond as soon as the batch items are calculated and there will be no possibility to retrieve the results later. The Synchronous API will return a timeout error (a 408 response) if the request takes longer than 60 seconds. The number of batch items is limited to **100** for this API.\n```\nPOST https://atlas.microsoft.com/route/directions/batch/sync/json?api-version=1.0&subscription-key={subscription-key}\n```\n### Submit Asynchronous Batch Request\nThe Asynchronous API is appropriate for processing big volumes of relatively complex route requests\n- It allows the retrieval of results in a separate call (multiple downloads are possible).\n- The asynchronous API is optimized for reliability and is not expected to run into a timeout.\n- The number of batch items is limited to **700** for this API.\n\nWhen you make a request by using async request, by default the service returns a 202 response code along a redirect URL in the Location field of the response header. This URL should be checked periodically until the response data or error information is available.\nThe asynchronous responses are stored for **14** days. The redirect URL returns a 404 response if used after the expiration period.\n\nPlease note that asynchronous batch request is a long-running request. Here's a typical sequence of operations:\n1. Client sends a Route Directions Batch `POST` request to Azure Maps\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Batch request has been accepted.\n\n > HTTP `Error` - There was an error processing your Batch request. This could either be a `400 Bad Request` or any other `Error` status code.\n\n3. If the batch request was accepted successfully, the `Location` header in the response contains the URL to download the results of the batch request.\n This status URI looks like following:\n\n``` GET https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0 ```\nNote:- Please remember to add AUTH information (subscription-key/azure_auth - See [Security](#security)) to the _status URI_ before running it.
\n4. Client issues a `GET` request on the _download URL_ obtained in Step 3 to download the batch results.\n\n### POST Body for Batch Request\nTo send the _route directions_ queries you will use a `POST` request where the request body will contain the `batchItems` array in `json` format and the `Content-Type` header will be set to `application/json`. Here's a sample request body containing 3 _route directions_ queries:\n\n\n```json\n{\n \"batchItems\": [\n { \"query\": \"?query=47.620659,-122.348934:47.610101,-122.342015&travelMode=bicycle&routeType=eco&traffic=false\" },\n { \"query\": \"?query=40.759856,-73.985108:40.771136,-73.973506&travelMode=pedestrian&routeType=shortest\" },\n { \"query\": \"?query=48.923159,-122.557362:32.621279,-116.840362\" }\n ]\n}\n```\n\nA _route directions_ query in a batch is just a partial URL _without_ the protocol, base URL, path, api-version and subscription-key. It can accept any of the supported _route directions_ [URI parameters](https://docs.microsoft.com/en-us/rest/api/maps/route/getroutedirections#uri-parameters). The string values in the _route directions_ query must be properly escaped (e.g. \" character should be escaped with \\\\ ) and it should also be properly URL-encoded.\n\n\nThe async API allows caller to batch up to **700** queries and sync API up to **100** queries, and the batch should contain at least **1** query.\n\n\n### Download Asynchronous Batch Results\nTo download the async batch results you will issue a `GET` request to the batch download endpoint. This _download URL_ can be obtained from the `Location` header of a successful `POST` batch request and looks like the following:\n\n```\nhttps://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}\n```\nHere's the typical sequence of operations for downloading the batch results:\n1. Client sends a `GET` request using the _download URL_.\n2. The server will respond with one of the following:\n \n > HTTP `202 Accepted` - Batch request was accepted but is still being processed. Please try again in some time.\n\n > HTTP `200 OK` - Batch request successfully processed. The response body contains all the batch results.\n\n\n\n### Batch Response Model\nThe returned data content is similar for async and sync requests. When downloading the results of an async batch request, if the batch has finished processing, the response body contains the batch response. This batch response contains a `summary` component that indicates the `totalRequests` that were part of the original batch request and `successfulRequests`i.e. queries which were executed successfully. The batch response also includes a `batchItems` array which contains a response for each and every query in the batch request. The `batchItems` will contain the results in the exact same order the original queries were sent in the batch request. Each item in `batchItems` contains `statusCode` and `response` fields. Each `response` in `batchItems` is of one of the following types:\n\n - [`RouteDirectionsResponse`](https://docs.microsoft.com/en-us/rest/api/maps/route/getroutedirections#routedirectionsresponse) - If the query completed successfully.\n\n - `Error` - If the query failed. The response will contain a `code` and a `message` in this case.\n\n\nHere's a sample Batch Response with 1 _successful_ and 1 _failed_ result:\n\n\n```json\n{\n \"summary\": {\n \"successfulRequests\": 1,\n \"totalRequests\": 2\n },\n \"batchItems\": [\n {\n \"statusCode\": 200,\n \"response\": {\n \"routes\": [\n {\n \"summary\": {\n \"lengthInMeters\": 1758,\n \"travelTimeInSeconds\": 387,\n \"trafficDelayInSeconds\": 0,\n \"departureTime\": \"2018-07-17T00:49:56+00:00\",\n \"arrivalTime\": \"2018-07-17T00:56:22+00:00\"\n },\n \"legs\": [\n {\n \"summary\": {\n \"lengthInMeters\": 1758,\n \"travelTimeInSeconds\": 387,\n \"trafficDelayInSeconds\": 0,\n \"departureTime\": \"2018-07-17T00:49:56+00:00\",\n \"arrivalTime\": \"2018-07-17T00:56:22+00:00\"\n },\n \"points\": [\n {\n \"latitude\": 47.62094,\n \"longitude\": -122.34892\n },\n {\n \"latitude\": 47.62094,\n \"longitude\": -122.3485\n },\n {\n \"latitude\": 47.62095,\n \"longitude\": -122.3476\n }\n ]\n }\n ],\n \"sections\": [\n {\n \"startPointIndex\": 0,\n \"endPointIndex\": 40,\n \"sectionType\": \"TRAVEL_MODE\",\n \"travelMode\": \"bicycle\"\n }\n ]\n }\n ]\n }\n },\n {\n \"statusCode\": 400,\n \"response\":\n {\n \"error\":\n {\n \"code\": \"400 BadRequest\",\n \"message\": \"Bad request: one or more parameters were incorrectly specified or are mutually exclusive.\"\n }\n }\n }\n ]\n}\n```", + "operationId": "Route_PostRouteDirectionsBatch", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "A Route Directions Batch API call containing 3 Route Directions API queries": { + "$ref": "./examples/PostRouteDirectionsBatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "routeDirectionsBatchRequestBody", + "in": "body", + "description": "The list of route directions queries/requests to process. The list can contain a max of 700 queries for async and 100 queries for sync version and must contain at least 1 query.", + "required": true, + "schema": { + "$ref": "#/definitions/BatchRequestBody" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BatchResponse" + } + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "Redirect": { + "type": "object", + "description": "This object is returned when the request is accepted but the processing has not been completed. The location header in the response contains the new URL to retry." + }, + "BatchResponse": { + "description": "This object is returned from a successful Batch service call", + "type": "object", + "properties": { + "summary": { + "description": "Summary for the batch request", + "type": "object", + "readOnly": true, + "properties": { + "successfulRequests": { + "description": "Number of successful requests in the batch", + "type": "integer", + "readOnly": true + }, + "totalRequests": { + "description": "Total number of requests in the batch", + "type": "integer", + "readOnly": true + } + } + }, + "batchItems": { + "description": "Array containing the batch results", + "type": "array", + "readOnly": true, + "items": { + "type": "object" + } + } + } + }, + "GeoJSONGeometry": { + "description": "A valid `GeoJSON` geometry object. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1) for details.", + "type": "object", + "discriminator": "type", + "required": [ + "type" + ], + "properties": { + "type": { + "description": "Specifies the `GeoJSON` geometry type. Must be one of the seven valid GeoJSON geometry types - Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon and GeometryCollection.", + "type": "string", + "enum": [ + "Point", + "MultiPoint", + "LineString", + "MultiLineString", + "Polygon", + "MultiPolygon", + "GeometryCollection" + ], + "x-ms-enum": { + "name": "GeoJSONGeometryType", + "modelAsString": false, + "values": [ + { + "value": "Point", + "description": "`GeoJSON Point` geometry." + }, + { + "value": "MultiPoint", + "description": "`GeoJSON MultiPoint` geometry." + }, + { + "value": "LineString", + "description": "`GeoJSON LineString` geometry." + }, + { + "value": "MultiLineString", + "description": "`GeoJSON MultiLineString` geometry." + }, + { + "value": "Polygon", + "description": "`GeoJSON Polygon` geometry." + }, + { + "value": "MultiPolygon", + "description": "`GeoJSON MultiPolygon` geometry." + }, + { + "value": "GeometryCollection", + "description": "`GeoJSON GeometryCollection` geometry." + } + ] + } + } + } + }, + "MultiPoint": { + "description": "A valid `GeoJSON MultiPoint` geometry type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.3) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the geometry. Value should always be equal to \"MultiPoint\".", + "type": "string" + }, + "coordinates": { + "description": "Coordinates for the `MultiPoint` geometry.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONPosition" + } + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "GeoJSONLinearRing": { + "description": "Though a linear ring is not explicitly represented as a GeoJSON geometry type, it helps in defining the polygon as an array of linear rings. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.6) for details.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONPosition" + } + }, + "GeoJSONPosition": { + "description": "A valid `GeoJSON Position` geometry type. A `Position` is an array of numbers with two or more elements. The first two elements are _longitude_ and _latitude_, precisely in that order. _Altitude/Elevation_ is an optional third element. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.1) for details.", + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "Point": { + "description": "A valid `GeoJSON Point` geometry type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.2) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the geometry. Value should always be equal to \"Point\".", + "type": "string" + }, + "coordinates": { + "$ref": "#/definitions/GeoJSONPosition" + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "MultiPolygon": { + "description": "A valid `GeoJSON MultiPolygon` object type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.7) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the object. Value should always be equal to \"MultiPolygon\".", + "type": "string" + }, + "coordinates": { + "description": "Contains a list of valid `GeoJSON` Polygon objects. **Note** that coordinates in GeoJSON are in x, y order (longitude, latitude).", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONLinearRing" + } + } + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "GeoJSONGeometryCollection": { + "description": "A valid `GeoJSON GeometryCollection` object type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.8) for details.", + "type": "object", + "properties": { + "type": { + "description": "Specifies the `type` for the object. Value should always be equal to \"GeometryCollection\".", + "type": "string" + }, + "geometries": { + "description": "Contains a list of valid `GeoJSON` geometry objects. **Note** that coordinates in GeoJSON are in x, y order (longitude, latitude).", + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONGeometry" + } + } + }, + "required": [ + "geometries" + ] + }, + "BatchRequestBody": { + "description": "This type represents the request body for the Batch service.", + "type": "object", + "properties": { + "batchItems": { + "description": "The list of queries/requests to process", + "type": "array", + "items": { + "description": "Batch Query object", + "type": "object", + "properties": { + "query": { + "description": "Partial query string", + "type": "string" + } + } + } + } + } + }, + "Coordinate": { + "description": "A location represented as a latitude and longitude.", + "type": "object", + "properties": { + "latitude": { + "description": "Latitude property", + "type": "number", + "format": "double", + "readOnly": true + }, + "longitude": { + "description": "Longitude property", + "type": "number", + "format": "double", + "readOnly": true + } + } + }, + "RouteDirectionsRequestBody": { + "type": "object", + "description": "Post body parameters for Route directions.", + "properties": { + "supportingPoints": { + "description": "A GeoJSON Geometry collection representing sequence of coordinates used as input for route reconstruction and for calculating zero or more alternative routes to this reference route.\n - The provided sequence of supporting points is used as input for route reconstruction.\n - The alternative routes are calculated between the origin and destination points specified in the base path parameter locations.\n - If both _minDeviationDistance_ and _minDeviationTime_ are set to zero, then these origin and destination points are\n expected to be at (or very near) the beginning and end of the reference route, respectively.\n - Intermediate locations (_waypoints_) are not supported when using <_supportingPoints_>.\n - The reference route may contain traffic incidents of type _ROAD_CLOSURE_, which are\n ignored for the calculation of the reference route's travel time and traffic delay.", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometryCollection" + }, + { + "properties": { + "geometries": { + "type": "array", + "items": { + "$ref": "#/definitions/Point" + } + } + } + } + ] + }, + "avoidVignette": { + "description": "This is a list of 3-character, ISO 3166-1, alpha-3 country codes of countries in which all toll roads with vignettes are to be avoided, e.g. \"AUS,CHE\". Toll roads with vignettes in countries not in the list are unaffected. Note: It is an error to specify both **avoidVignette** and **allowVignette**.", + "type": "array", + "items": { + "type": "string" + } + }, + "allowVignette": { + "description": "This is a list of 3-character, ISO 3166-1, alpha-3 country codes of countries in which toll roads with vignettes are allowed, e.g. \"AUS,CHE\". Specifying **allowVignette** with some countries X is equivalent to specifying **avoidVignette** with all countries but X. Specifying **allowVignette** with an empty list is the same as avoiding all toll roads with vignettes. Note: It is an error to specify both **avoidVignette** and **allowVignette**.", + "type": "array", + "items": { + "type": "string" + } + }, + "avoidAreas": { + "description": "A GeoJSON MultiPolygon representing list of areas to avoid. Only rectangle polygons are supported. The maximum size of a rectangle is about 160x160 km. Maximum number of avoided areas is **10**. It cannot cross the 180th meridian. It must be between -80 and +80 degrees of latitude.", + "$ref": "#/definitions/MultiPolygon" + } + } + }, + "RouteDirectionsResponse": { + "description": "This object is returned from a successful Route Directions call", + "type": "object", + "properties": { + "formatVersion": { + "description": "Format Version property", + "type": "string", + "readOnly": true + }, + "routes": { + "description": "Routes array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RouteDirectionsResult" + } + }, + "optimizedWaypoints": { + "description": "Optimized sequence of waypoints. It shows the index from the user provided waypoint sequence for the original and optimized list. For instance, a response: \n\n```\n\n\n\n\n\n```\n\nmeans that the original sequence is [0, 1, 2] and optimized sequence is [1, 2, 0]. Since the index starts by 0 the original is \"first, second, third\" while the optimized is \"second, third, first\".", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RouteOptimizedWaypoint" + } + }, + "report": { + "$ref": "#/definitions/RouteResponseReport" + } + } + }, + "RouteDirectionsResult": { + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/RouteDirectionsSummary" + }, + "legs": { + "description": "Legs array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RouteResultLeg" + } + }, + "sections": { + "description": "Sections array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RouteResultSection" + } + }, + "guidance": { + "$ref": "#/definitions/RouteResultGuidance" + } + } + }, + "RouteDirectionsSummary": { + "description": "Summary object", + "type": "object", + "readOnly": true, + "properties": { + "lengthInMeters": { + "description": "Length In Meters property", + "type": "integer", + "readOnly": true + }, + "travelTimeInSeconds": { + "description": "Estimated travel time in seconds property that includes the delay due to real-time traffic. Note that even when traffic=false travelTimeInSeconds still includes the delay due to traffic. If DepartAt is in the future, travel time is calculated using time-dependent historic traffic data.", + "type": "integer", + "readOnly": true + }, + "trafficDelayInSeconds": { + "description": "Estimated delay in seconds caused by the real-time incident(s) according to traffic information. For routes planned with departure time in the future, delays is always 0. To return additional travel times using different types of traffic information, parameter computeTravelTimeFor=all needs to be added.", + "type": "integer", + "readOnly": true + }, + "departureTime": { + "description": "Departure Time property", + "type": "string", + "readOnly": true + }, + "arrivalTime": { + "description": "Arrival Time property", + "type": "string", + "readOnly": true + } + } + }, + "RouteOptimizedWaypoint": { + "description": "Optimized way point object.", + "type": "object", + "properties": { + "providedIndex": { + "description": "Way point index provided by the user.", + "type": "integer", + "readOnly": true + }, + "optimizedIndex": { + "description": "Optimized way point index from the system.", + "type": "integer", + "readOnly": true + } + } + }, + "RouteResultLeg": { + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/RouteResultLegSummary" + }, + "points": { + "description": "Points array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Coordinate" + } + } + } + }, + "RouteResultLegSummary": { + "description": "Summary object for route section.", + "type": "object", + "readOnly": true, + "properties": { + "lengthInMeters": { + "description": "Length In Meters property", + "type": "integer", + "readOnly": true + }, + "travelTimeInSeconds": { + "description": "Estimated travel time in seconds property that includes the delay due to real-time traffic. Note that even when traffic=false travelTimeInSeconds still includes the delay due to traffic. If DepartAt is in the future, travel time is calculated using time-dependent historic traffic data.", + "type": "integer", + "readOnly": true + }, + "trafficDelayInSeconds": { + "description": "Estimated delay in seconds caused by the real-time incident(s) according to traffic information. For routes planned with departure time in the future, delays is always 0. To return additional travel times using different types of traffic information, parameter computeTravelTimeFor=all needs to be added.", + "type": "integer", + "readOnly": true + }, + "departureTime": { + "description": "Departure Time property", + "type": "string", + "readOnly": true + }, + "arrivalTime": { + "description": "Arrival Time property", + "type": "string", + "readOnly": true + }, + "noTrafficTravelTimeInSeconds": { + "description": "Estimated travel time calculated as if there are no delays on the route due to traffic conditions (e.g. congestion). Included only if computeTravelTimeFor = all is used in the query.", + "type": "integer", + "readOnly": true + }, + "historicTrafficTravelTimeInSeconds": { + "description": "Estimated travel time calculated using time-dependent historic traffic data. Included only if computeTravelTimeFor = all is used in the query.", + "type": "integer", + "readOnly": true + }, + "liveTrafficIncidentsTravelTimeInSeconds": { + "description": "Estimated travel time calculated using real-time speed data. Included only if computeTravelTimeFor = all is used in the query.", + "type": "integer", + "readOnly": true + }, + "fuelConsumptionInLiters": { + "description": "Estimated fuel consumption in liters using the Combustion Consumption Model. Included if vehicleEngineType is set to _combustion_ and constantSpeedConsumptionInLitersPerHundredkm is specified. The value will be non-negative.", + "type": "number", + "format": "float", + "readOnly": true + }, + "batteryConsumptionInkWh": { + "description": "Estimated electric energy consumption in kilowatt hours (kWh) using the Electric Consumption Model. Included if vehicleEngineType is set to electric and constantSpeedConsumptionInkWhPerHundredkm is specified. The value of batteryConsumptionInkWh includes the recuperated electric energy and can therefore be negative (which indicates gaining energy). If both maxChargeInkWh and currentChargeInkWh are specified, recuperation will be capped to ensure that the battery charge level never exceeds maxChargeInkWh. If neither maxChargeInkWh nor currentChargeInkWh are specified, unconstrained recuperation is assumed in the consumption calculation.", + "type": "number", + "format": "float", + "readOnly": true + } + } + }, + "RouteResultSection": { + "type": "object", + "properties": { + "startPointIndex": { + "description": "Start Point Index property", + "type": "integer", + "readOnly": true + }, + "endPointIndex": { + "description": "End Point Index property", + "type": "integer", + "readOnly": true + }, + "sectionType": { + "description": "Section Type property", + "type": "string", + "readOnly": true + }, + "travelMode": { + "description": "Travel Mode property", + "type": "string", + "readOnly": true + }, + "simpleCategory": { + "description": "Type of the incident. Can currently be JAM, ROAD_WORK, ROAD_CLOSURE, or OTHER. See \"tec\" for detailed information.", + "type": "string", + "readOnly": true + }, + "effectiveSpeedInKmh": { + "description": "Effective speed of the incident in km/h, averaged over its entire length.", + "type": "integer", + "readOnly": true + }, + "delayInSeconds": { + "description": "Delay in seconds caused by the incident.", + "type": "integer", + "readOnly": true + }, + "magnitudeOfDelay": { + "description": "The magnitude of delay caused by the incident. These values correspond to the values of the response field ty of the [Get Traffic Incident Detail API](https://docs.microsoft.com/rest/api/maps/traffic/gettrafficincidentdetail). ", + "readOnly": true, + "type": "string", + "enum": [ + "0", + "1", + "2", + "3", + "4" + ], + "x-ms-enum": { + "name": "MagnitudeOfDelay", + "modelAsString": false, + "values": [ + { + "value": "0", + "description": "Unknown." + }, + { + "value": "1", + "description": "Minor." + }, + { + "value": "2", + "description": "Moderate." + }, + { + "value": "3", + "description": "Major." + }, + { + "value": "4", + "description": "Undefined, used for road closures and other indefinite delays." + } + ] + } + }, + "tec": { + "$ref": "#/definitions/RouteResultSectionTec" + } + } + }, + "RouteResultSectionTec": { + "description": "Details of the traffic event, using definitions in the [TPEG2-TEC](https://www.iso.org/standard/63116.html) standard. Can contain effectCode and causes elements.", + "type": "object", + "properties": { + "effectCode": { + "description": "The effect on the traffic flow. Contains a value in the tec001:EffectCode table, as defined in the [TPEG2-TEC](https://www.iso.org/standard/63116.html) standard. Can be used to color-code traffic events according to severity.", + "type": "integer", + "readOnly": true + }, + "causes": { + "description": "Causes array", + "type": "array", + "items": { + "$ref": "#/definitions/RouteResultSectionTecCause" + } + } + } + }, + "RouteResultSectionTecCause": { + "description": "The cause of the traffic event. Can contain mainCauseCode and subCauseCode elements. Can be used to define iconography and descriptions.", + "type": "object", + "properties": { + "mainCauseCode": { + "description": "The main cause of the traffic event. Contains a value in the tec002:CauseCode table, as defined in the [TPEG2-TEC](https://www.iso.org/standard/63116.html) standard.", + "type": "integer", + "readOnly": true + }, + "subCauseCode": { + "description": "The subcause of the traffic event. Contains a value in the sub cause table defined by the mainCauseCode, as defined in the [TPEG2-TEC](https://www.iso.org/standard/63116.html) standard.", + "type": "integer", + "readOnly": true + } + } + }, + "RouteResultInstruction": { + "description": "A set of attributes describing a maneuver, e.g. 'Turn right', 'Keep left', 'Take the ferry', 'Take the motorway', 'Arrive'.", + "type": "object", + "properties": { + "routeOffsetInMeters": { + "description": "Distance from the start of the route to the point of the instruction.", + "type": "integer", + "readOnly": true + }, + "travelTimeInSeconds": { + "description": "Estimated travel time up to the point corresponding to routeOffsetInMeters.", + "type": "integer", + "readOnly": true + }, + "point": { + "$ref": "#/definitions/Coordinate" + }, + "pointIndex": { + "description": "The index of the point in the list of polyline \"points\" corresponding to the point of the instruction.", + "type": "integer", + "readOnly": true + }, + "instructionType": { + "description": "Type of the instruction, e.g., turn or change of road form.", + "type": "string", + "enum": [ + "TURN", + "ROAD_CHANGE", + "LOCATION_DEPARTURE", + "LOCATION_ARRIVAL", + "DIRECTION_INFO", + "LOCATION_WAYPOINT" + ], + "x-ms-enum": { + "name": "GuidanceInstructionType", + "modelAsString": false, + "values": [ + { + "value": "TURN", + "description": "Turn." + }, + { + "value": "ROAD_CHANGE", + "description": "Road Change." + }, + { + "value": "LOCATION_DEPARTURE", + "description": "Departure location." + }, + { + "value": "LOCATION_ARRIVAL", + "description": "Arrival location." + }, + { + "value": "DIRECTION_INFO", + "description": "Direction information." + }, + { + "value": "LOCATION_WAYPOINT", + "description": "Way point location." + } + ] + } + }, + "roadNumbers": { + "description": "The road number(s) of the next significant road segment(s) after the maneuver, or of the road(s) to be followed. Example: [\"E34\", \"N205\"]", + "type": "array", + "items": { + "type": "string", + "readOnly": true + }, + "readOnly": true + }, + "exitNumber": { + "description": "The number(s) of a highway exit taken by the current maneuver. If an exit has multiple exit numbers, they will be separated by \",\" and possibly aggregated by \"-\", e.g., \"10, 13-15\".", + "type": "string", + "readOnly": true + }, + "street": { + "description": "Street name of the next significant road segment after the maneuver, or of the street that should be followed.", + "type": "string", + "readOnly": true + }, + "signpostText": { + "description": "The text on a signpost which is most relevant to the maneuver, or to the direction that should be followed.", + "type": "string", + "readOnly": true + }, + "countryCode": { + "description": "3-character [ISO 3166-1](https://www.iso.org/iso-3166-country-codes.html) alpha-3 country code. E.g. USA.", + "type": "string", + "readOnly": true + }, + "stateCode": { + "description": "A subdivision (e.g., state) of the country, represented by the second part of an [ISO 3166-2](https://www.iso.org/standard/63546.html) code. This is only available for some countries like the US, Canada, and Mexico.", + "type": "string", + "readOnly": true + }, + "junctionType": { + "description": "The type of the junction where the maneuver takes place. For larger roundabouts, two separate instructions are generated for entering and leaving the roundabout.", + "type": "string", + "readOnly": true, + "enum": [ + "REGULAR", + "ROUNDABOUT", + "BIFURCATION" + ], + "x-ms-enum": { + "name": "JunctionType", + "modelAsString": false, + "values": [ + { + "value": "REGULAR", + "description": "regular" + }, + { + "value": "ROUNDABOUT", + "description": "roundabout" + }, + { + "value": "BIFURCATION", + "description": "bifurcation" + } + ] + } + }, + "turnAngleInDecimalDegrees": { + "description": "Indicates the direction of an instruction. If junctionType indicates a turn instruction:\n\n * 180 = U-turn\n * [-179, -1] = Left turn\n * 0 = Straight on (a '0 degree' turn)\n * [1, 179] = Right turn\n\nIf junctionType indicates a bifurcation instruction:\n\n * <0 - keep left\n * \\>0 - keep right", + "type": "integer", + "readOnly": true + }, + "roundaboutExitNumber": { + "description": "This indicates which exit to take at a roundabout.", + "type": "string", + "readOnly": true + }, + "possibleCombineWithNext": { + "description": "It is possible to optionally combine the instruction with the next one. This can be used to build messages like \"Turn left and then turn right\".", + "type": "boolean", + "readOnly": true + }, + "drivingSide": { + "description": "Indicates left-hand vs. right-hand side driving at the point of the maneuver.", + "type": "string", + "readOnly": true, + "enum": [ + "LEFT", + "RIGHT" + ], + "x-ms-enum": { + "name": "DrivingSide", + "modelAsString": false, + "values": [ + { + "value": "LEFT", + "description": "Left side." + }, + { + "value": "RIGHT", + "description": "Right side." + } + ] + } + }, + "maneuver": { + "description": "A code identifying the maneuver.", + "type": "string", + "readOnly": true, + "enum": [ + "ARRIVE", + "ARRIVE_LEFT", + "ARRIVE_RIGHT", + "DEPART", + "STRAIGHT", + "KEEP_RIGHT", + "BEAR_RIGHT", + "TURN_RIGHT", + "SHARP_RIGHT", + "KEEP_LEFT", + "BEAR_LEFT", + "TURN_LEFT", + "SHARP_LEFT", + "MAKE_UTURN", + "ENTER_MOTORWAY", + "ENTER_FREEWAY", + "ENTER_HIGHWAY", + "TAKE_EXIT", + "MOTORWAY_EXIT_LEFT", + "MOTORWAY_EXIT_RIGHT", + "TAKE_FERRY", + "ROUNDABOUT_CROSS", + "ROUNDABOUT_RIGHT", + "ROUNDABOUT_LEFT", + "ROUNDABOUT_BACK", + "TRY_MAKE_UTURN", + "FOLLOW", + "SWITCH_PARALLEL_ROAD", + "SWITCH_MAIN_ROAD", + "ENTRANCE_RAMP", + "WAYPOINT_LEFT", + "WAYPOINT_RIGHT", + "WAYPOINT_REACHED" + ], + "x-ms-enum": { + "name": "GuidanceManeuver", + "modelAsString": false, + "values": [ + { + "value": "ARRIVE", + "description": "You have arrived." + }, + { + "value": "ARRIVE_LEFT", + "description": "You have arrived. Your destination is on the left." + }, + { + "value": "ARRIVE_RIGHT", + "description": "You have arrived. Your destination is on the right." + }, + { + "value": "DEPART", + "description": "Leave." + }, + { + "value": "STRAIGHT", + "description": "Keep straight on." + }, + { + "value": "KEEP_RIGHT", + "description": "Keep right." + }, + { + "value": "BEAR_RIGHT", + "description": "Bear right." + }, + { + "value": "TURN_RIGHT", + "description": "Turn right." + }, + { + "value": "SHARP_RIGHT", + "description": "Turn sharp right." + }, + { + "value": "KEEP_LEFT", + "description": "Keep left." + }, + { + "value": "BEAR_LEFT", + "description": "Bear left." + }, + { + "value": "TURN_LEFT", + "description": "Turn left." + }, + { + "value": "SHARP_LEFT", + "description": "Turn sharp left." + }, + { + "value": "MAKE_UTURN", + "description": "Make a U-turn." + }, + { + "value": "ENTER_MOTORWAY", + "description": "Take the motorway." + }, + { + "value": "ENTER_FREEWAY", + "description": "Take the freeway." + }, + { + "value": "ENTER_HIGHWAY", + "description": "Take the highway." + }, + { + "value": "TAKE_EXIT", + "description": "Take the exit." + }, + { + "value": "MOTORWAY_EXIT_LEFT", + "description": "Take the left exit." + }, + { + "value": "MOTORWAY_EXIT_RIGHT", + "description": "Take the right exit." + }, + { + "value": "TAKE_FERRY", + "description": "Take the ferry." + }, + { + "value": "ROUNDABOUT_CROSS", + "description": "Cross the roundabout." + }, + { + "value": "ROUNDABOUT_RIGHT", + "description": "At the roundabout take the exit on the right." + }, + { + "value": "ROUNDABOUT_LEFT", + "description": "At the roundabout take the exit on the left." + }, + { + "value": "ROUNDABOUT_BACK", + "description": "Go around the roundabout." + }, + { + "value": "TRY_MAKE_UTURN", + "description": "Try to make a U-turn." + }, + { + "value": "FOLLOW", + "description": "Follow." + }, + { + "value": "SWITCH_PARALLEL_ROAD", + "description": "Switch to the parallel road." + }, + { + "value": "SWITCH_MAIN_ROAD", + "description": "Switch to the main road." + }, + { + "value": "ENTRANCE_RAMP", + "description": "Take the ramp." + }, + { + "value": "WAYPOINT_LEFT", + "description": "You have reached the waypoint. It is on the left." + }, + { + "value": "WAYPOINT_RIGHT", + "description": "You have reached the waypoint. It is on the right." + }, + { + "value": "WAYPOINT_REACHED", + "description": "You have reached the waypoint." + } + ] + } + }, + "message": { + "description": "A human-readable message for the maneuver.", + "type": "string", + "readOnly": true + }, + "combinedMessage": { + "description": "A human-readable message for the maneuver combined with the message from the next instruction. Sometimes it is possible to combine two successive instructions into a single instruction making it easier to follow. When this is the case the possibleCombineWithNext flag will be true. For example:\n\n```\n10. Turn left onto Einsteinweg/A10/E22 towards Ring Amsterdam\n11. Follow Einsteinweg/A10/E22 towards Ring Amsterdam\n```\n\nThe possibleCombineWithNext flag on instruction 10 is true. This indicates to the clients of coded guidance that it can be combined with instruction 11. The instructions will be combined automatically for clients requesting human-readable guidance. The combinedMessage field contains the combined message:\n\n```\nTurn left onto Einsteinweg/A10/E22 towards Ring Amsterdam\nthen follow Einsteinweg/A10/E22 towards Ring Amsterdam.\n```", + "type": "string", + "readOnly": true + } + } + }, + "RouteResultInstructionGroup": { + "description": "Groups a sequence of instruction elements which are related to each other. The sequence range is constrained with firstInstructionIndex and lastInstructionIndex. When human-readable text messages are requested for guidance (instructionType=text or tagged), then the instructionGroup has a summary message returned when available.", + "type": "object", + "properties": { + "firstInstructionIndex": { + "description": "Index of the first instruction.", + "type": "integer", + "readOnly": true + }, + "lastInstructionIndex": { + "description": "Index of the last instruction.", + "type": "integer", + "readOnly": true + }, + "groupLengthInMeters": { + "description": "Length of the group.", + "type": "integer", + "readOnly": true + }, + "groupMessage": { + "description": "Summary message when human-readable text messages are requested for guidance (instructionType=text or tagged).", + "type": "string", + "readOnly": true + } + } + }, + "RouteResultGuidance": { + "description": "Contains guidance related elements. This field is present only when guidance was requested and is available.", + "type": "object", + "readOnly": true, + "properties": { + "instructions": { + "description": "A list of instructions describing maneuvers.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RouteResultInstruction" + } + }, + "instructionGroups": { + "description": "Groups a sequence of instruction elements which are related to each other.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RouteResultInstructionGroup" + } + } + } + }, + "RouteRangeResponse": { + "description": "This object is returned from a successful Route Reachable Range call", + "type": "object", + "properties": { + "formatVersion": { + "description": "Format Version property", + "type": "string", + "readOnly": true + }, + "reachableRange": { + "$ref": "#/definitions/RouteRange" + }, + "report": { + "$ref": "#/definitions/RouteResponseReport" + } + } + }, + "RouteRange": { + "description": "Reachable Range", + "type": "object", + "properties": { + "center": { + "description": "Center point of the reachable range", + "$ref": "#/definitions/Coordinate" + }, + "boundary": { + "description": "Polygon boundary of the reachable range represented as a list of points.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Coordinate" + } + } + } + }, + "RouteResponseReport": { + "description": "Reports the effective settings used in the current call.", + "type": "object", + "properties": { + "effectiveSettings": { + "description": "Effective parameters or data used when calling this Route API.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RouteResponseReportEffectiveSetting" + } + } + } + }, + "RouteResponseReportEffectiveSetting": { + "description": "Effective parameter or data used when calling this Route API.", + "type": "object", + "properties": { + "key": { + "description": "Name of the parameter used.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Value of the parameter used.", + "type": "string", + "readOnly": true + } + } + }, + "RouteMatrixResponse": { + "description": "This object is returned from a successful Route Matrix call. For ex, if 2 origins and 3 destinations are provided, there are going to 2 arrays with 3 elements in each. Each element's content depends on the options provided in the query.", + "type": "object", + "properties": { + "formatVersion": { + "description": "Format Version property", + "type": "string", + "readOnly": true + }, + "matrix": { + "description": "Results as a 2 dimensional array of route summaries.", + "type": "array", + "readOnly": true, + "items": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RouteMatrixResult" + } + } + }, + "summary": { + "$ref": "#/definitions/RouteMatrixSummary" + } + } + }, + "RouteMatrixSummary": { + "description": "Summary object", + "type": "object", + "readOnly": true, + "properties": { + "successfulRoutes": { + "description": "Number of successful routes in the response.", + "type": "integer", + "readOnly": true + }, + "totalRoutes": { + "description": "Total number of routes requested. Number of cells in the input matrix.", + "type": "integer", + "readOnly": true + } + } + }, + "RouteMatrixResult": { + "description": "Matrix result object", + "type": "object", + "readOnly": true, + "properties": { + "statusCode": { + "description": "StatusCode property for the current cell in the input matrix.", + "type": "integer", + "readOnly": true + }, + "response": { + "$ref": "#/definitions/RouteMatrixResultResponse" + } + } + }, + "RouteMatrixResultResponse": { + "description": "Response object of the current cell in the input matrix.", + "type": "object", + "readOnly": true, + "properties": { + "routeSummary": { + "$ref": "#/definitions/RouteResultLegSummary" + } + } + }, + "RouteMatrixRequestBody": { + "description": "An object with a matrix of coordinates.", + "type": "object", + "properties": { + "origins": { + "$ref": "#/definitions/MultiPoint" + }, + "destinations": { + "$ref": "#/definitions/MultiPoint" + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetPOICategoryTree.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetPOICategoryTree.json new file mode 100644 index 000000000000..1a1114c83bc7 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetPOICategoryTree.json @@ -0,0 +1,252 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "poiCategories": [ + { + "id": 7320, + "name": "Sports Center", + "childCategoryIds": [ + 7320002, + 7320003, + 7320005 + ], + "synonyms": [ + "Gym", + "Indoors Sports", + "Sports Centre" + ] + }, + { + "id": 7374, + "name": "Stadium", + "childCategoryIds": [ + 7374002, + 7374009, + 7374012, + 7374003, + 7374010, + 7374005, + 7374008, + 7374011, + 7374006, + 7374014, + 7374013, + 7374007, + 7374004 + ], + "synonyms": [ + "Arena", + "Gymnasium", + "Sports Ground", + "Sports Stadium" + ] + }, + { + "id": 7315, + "name": "Restaurant", + "childCategoryIds": [ + 7315081, + 7315002, + 7315082, + 7315003, + 7315083, + 7315084, + 7315085, + 7315062, + 7315086, + 7315004, + 7315146, + 7315005, + 7315087, + 7315006, + 7315007, + 7315088, + 7315089, + 7315072, + 7315008, + 7315142, + 7315090, + 7315091, + 7315147, + 7315009, + 7315092, + 7315010, + 7315011, + 7315070, + 7315093, + 7315012, + 7315094, + 7315095, + 7315063, + 7315013, + 7315096, + 7315097, + 7315068, + 7315098, + 7315099, + 7315057, + 7315079, + 7315014, + 7315100, + 7315101, + 7315132, + 7315102, + 7315133, + 7315015, + 7315016, + 7315104, + 7315134, + 7315017, + 7315071, + 7315018, + 7315019, + 7315020, + 7315054, + 7315069, + 7315021, + 7315058, + 7315052, + 7315022, + 7315078, + 7315023, + 7315024, + 7315073, + 7315105, + 7315065, + 7315106, + 7315025, + 7315066, + 7315026, + 7315027, + 7315028, + 7315067, + 7315029, + 7315030, + 7315107, + 7315135, + 7315108, + 7315031, + 7315109, + 7315032, + 7315033, + 7315034, + 7315110, + 7315074, + 7315136, + 7315111, + 7315112, + 7315075, + 7315035, + 7315127, + 7315061, + 7315036, + 7315037, + 7315129, + 7315038, + 7315130, + 7315039, + 7315041, + 7315131, + 7315040, + 7315143, + 7315042, + 7315113, + 7315114, + 7315115, + 7315043, + 7315053, + 7315055, + 7315056, + 7315116, + 7315117, + 7315080, + 7315139, + 7315064, + 7315140, + 7315044, + 7315045, + 7315118, + 7315046, + 7315148, + 7315119, + 7315047, + 7315120, + 7315059, + 7315145, + 7315076, + 7315121, + 7315048, + 7315122, + 7315123, + 7315049, + 7315124, + 7315050, + 7315125, + 7315051, + 7315126, + 7315060, + 7315149 + ], + "synonyms": [ + "Dining", + "Eatery", + "Eating House", + "Eating Place" + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddress.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddress.json new file mode 100644 index 000000000000..25f04a4c64ec --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddress.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "15127 NE 24th Street, Redmond, WA 98052", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "summary": { + "query": "15127 NE 24th Street, Redmond, WA 98052", + "queryType": "NON_NEAR", + "queryTime": 58, + "numResults": 1, + "offset": 0, + "totalResults": 1, + "fuzzyLevel": 1 + }, + "results": [ + { + "type": "Point Address", + "id": "US/PAD/p0/19173426", + "score": 14.51, + "address": { + "streetNumber": "15127", + "streetName": "NE 24th St", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond, Adelaide, Ames Lake, Avondale, Earlmount", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980525544", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "15127 NE 24th St, Redmond, WA 980525544", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.6308, + "lon": -122.1385 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.6317, + "lon": -122.13983 + }, + "btmRightPoint": { + "lat": 47.6299, + "lon": -122.13717 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.6315, + "lon": -122.13852 + } + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressReverse.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressReverse.json new file mode 100644 index 000000000000..097316bfd647 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressReverse.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "37.337,-121.89", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "summary": { + "queryTime": 5, + "numResults": 1 + }, + "addresses": [ + { + "address": { + "buildingNumber": "31", + "streetNumber": "31", + "routeNumbers": [], + "street": "N 2nd St", + "streetName": "N 2nd St", + "streetNameAndNumber": "31 N 2nd St", + "countryCode": "US", + "countrySubdivision": "CA", + "countrySubdivisionName": "California", + "municipality": "San Jose", + "postalCode": "95113", + "country": "United States of America", + "countryCodeISO3": "USA", + "freeformAddress": "31 N 2nd St, San Jose CA 95113", + "extendedPostalCode": "951131217" + }, + "position": "37.337090,-121.889820" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressReverseCrossStreet.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressReverseCrossStreet.json new file mode 100644 index 000000000000..762140c8db64 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressReverseCrossStreet.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "37.337,-121.89", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "summary": { + "numResults": 1, + "queryTime": 41 + }, + "addresses": [ + { + "address": { + "streetName": "East Santa Clara Street & North 2nd Street", + "crossStreet": "East Santa Clara Street", + "municipalitySubdivision": "San Jose, Downtown San Jose", + "municipality": "San Jose", + "countrySecondarySubdivision": "Santa Clara", + "countryTertiarySubdivision": "San Jose", + "countrySubdivision": "CA", + "postalCode": "95113", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "East Santa Clara Street & North 2nd Street, San Jose, CA 95113", + "countrySubdivisionName": "California", + "street": "North 2nd Street" + }, + "position": "37.33666,-121.88951" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressStructured.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressStructured.json new file mode 100644 index 000000000000..666e45fb7327 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchAddressStructured.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "countryCode": "US", + "streetName": "NE%2024th%20Street", + "streetNumber": "15127", + "municipality": "Redmond", + "countrySubdivision": "WA", + "postalCode": "98052", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "summary": { + "query": "15127 98052 ne redmond wa", + "queryType": "NON_NEAR", + "queryTime": 57, + "numResults": 1, + "offset": 0, + "totalResults": 34, + "fuzzyLevel": 1, + "geoBias": { + "lat": 47.30129317913035, + "lon": -120.88247999999997 + } + }, + "results": [ + { + "type": "Point Address", + "id": "US/PAD/p0/37974392", + "score": 8.074, + "dist": 101274.64693865852, + "address": { + "streetNumber": "15127", + "streetName": "NE 24th St", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond, Earlmount, Avondale, Ames Lake, Adelaide", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980525544", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "15127 NE 24th St, Redmond, WA 98052", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.6308, + "lon": -122.1385 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.6317, + "lon": -122.13983 + }, + "btmRightPoint": { + "lat": 47.6299, + "lon": -122.13717 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.6315, + "lon": -122.13852 + } + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchFuzzy.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchFuzzy.json new file mode 100644 index 000000000000..1fbb11c89ff5 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchFuzzy.json @@ -0,0 +1,703 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "seattle", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "summary": { + "query": "seattle", + "queryType": "NON_NEAR", + "queryTime": 66, + "numResults": 10, + "offset": 0, + "totalResults": 3720, + "fuzzyLevel": 1 + }, + "results": [ + { + "type": "Geography", + "id": "US/GEO/p0/188055", + "score": 2.531, + "entityType": "Municipality", + "address": { + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "countrySubdivision": "WA", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "Seattle, WA", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.60323, + "lon": -122.33028 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.7344, + "lon": -122.4594 + }, + "btmRightPoint": { + "lat": 47.48106, + "lon": -122.22497 + } + }, + "dataSources": { + "geometry": { + "id": "00005557-4100-3c00-0000-0000596ae8ed" + } + } + }, + { + "type": "Geography", + "id": "US/GEO/p0/183911", + "score": 2.382, + "entityType": "Municipality", + "address": { + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countrySubdivision": "WA", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "Seattle, WA", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.55342, + "lon": -122.25007 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.58995, + "lon": -122.26723 + }, + "btmRightPoint": { + "lat": 47.5169, + "lon": -122.23291 + } + }, + "dataSources": { + "geometry": { + "id": "00005557-4100-3c00-0000-00006553f33d" + } + } + }, + { + "type": "POI", + "id": "ZA/POI/p0/449288", + "score": 2.226, + "info": "search:ta:710009004165863-ZA", + "poi": { + "name": "Seattle Coffee Co - Groote Kerk Sentrum", + "brands": [ + { + "name": "Seattle Coffee Company" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.seattlecoffeecompany.co.za", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetName": "Kloof Street", + "municipalitySubdivision": "Cape Town", + "municipality": "Cape Town", + "countrySecondarySubdivision": "City of Cape Town", + "countrySubdivision": "Western Cape", + "postalCode": "8001", + "countryCode": "ZA", + "country": "South Africa", + "countryCodeISO3": "ZAF", + "freeformAddress": "Kloof Street, Gardens, City of Cape Town, Western Cape, 8001", + "localName": "Gardens" + }, + "position": { + "lat": -33.92917, + "lon": 18.41178 + }, + "viewport": { + "topLeftPoint": { + "lat": -33.92827, + "lon": 18.4107 + }, + "btmRightPoint": { + "lat": -33.93007, + "lon": 18.41286 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": -33.92907, + "lon": 18.41162 + } + } + ] + }, + { + "type": "POI", + "id": "ZA/POI/p0/449396", + "score": 2.226, + "info": "search:ta:710009004163591-ZA", + "poi": { + "name": "Seattle Coffee Co - Pietermaritzburg", + "phone": "+(27)-(33)-3458486", + "brands": [ + { + "name": "Seattle Coffee Company" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.seattlecoffeecompany.co.za", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "9", + "streetName": "Armitage Road", + "municipalitySubdivision": "Pietermaritzburg City, Pietermaritzburg", + "municipality": "Pietermaritzburg", + "countrySecondarySubdivision": "The Msunduzi", + "countrySubdivision": "KwaZulu-Natal", + "postalCode": "3201", + "countryCode": "ZA", + "country": "South Africa", + "countryCodeISO3": "ZAF", + "freeformAddress": "Armitage Road 9, Athlone, The Msunduzi, KwaZulu-Natal, 3201", + "localName": "Athlone" + }, + "position": { + "lat": -29.58611, + "lon": 30.37508 + }, + "viewport": { + "topLeftPoint": { + "lat": -29.58521, + "lon": 30.37405 + }, + "btmRightPoint": { + "lat": -29.58701, + "lon": 30.37611 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": -29.58668, + "lon": 30.37531 + } + } + ] + }, + { + "type": "POI", + "id": "ZA/POI/p0/451868", + "score": 2.226, + "info": "search:ta:710009002195538-ZA", + "poi": { + "name": "Seattle Coffee Co - Bedford Village", + "phone": "+(27)-(84)-5451111", + "brands": [ + { + "name": "Seattle Coffee Company" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.seattlecoffeecompany.co.za", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetName": "Van Buuren Road", + "municipalitySubdivision": "Bedfordview", + "municipality": "Germiston", + "countrySecondarySubdivision": "Ekurhuleni", + "countrySubdivision": "Gauteng", + "postalCode": "2007", + "countryCode": "ZA", + "country": "South Africa", + "countryCodeISO3": "ZAF", + "freeformAddress": "Van Buuren Road, Bedfordview, Ekurhuleni, Gauteng, 2007", + "localName": "Bedfordview" + }, + "position": { + "lat": -26.18009, + "lon": 28.13544 + }, + "viewport": { + "topLeftPoint": { + "lat": -26.17919, + "lon": 28.13444 + }, + "btmRightPoint": { + "lat": -26.18099, + "lon": 28.13644 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": -26.18006, + "lon": 28.13636 + } + } + ] + }, + { + "type": "POI", + "id": "ZA/POI/p0/488888", + "score": 2.226, + "info": "search:ta:710009002102639-ZA", + "poi": { + "name": "Seattle Coffee Co - Caltex Starstop Milly's", + "phone": "+(27)-(13)-2560340", + "brands": [ + { + "name": "Seattle Coffee Company" + } + ], + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "municipality": "Wonderfontein", + "countrySecondarySubdivision": "Emakhazeni", + "countrySubdivision": "Mpumalanga", + "countryCode": "ZA", + "country": "South Africa", + "countryCodeISO3": "ZAF", + "freeformAddress": "Wonderfontein, Emakhazeni, Mpumalanga" + }, + "position": { + "lat": -25.68842, + "lon": 30.21291 + }, + "viewport": { + "topLeftPoint": { + "lat": -25.68752, + "lon": 30.21191 + }, + "btmRightPoint": { + "lat": -25.68932, + "lon": 30.21391 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": -25.68913, + "lon": 30.21343 + } + } + ] + }, + { + "type": "POI", + "id": "ZA/POI/p0/489433", + "score": 2.226, + "info": "search:ta:710009002184068-ZA", + "poi": { + "name": "Seattle Coffee Co - Southcoast Mall", + "phone": "+(27)-(39)-3150816", + "brands": [ + { + "name": "Seattle Coffee Company" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.seattlecoffeecompany.co.za", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "municipalitySubdivision": "Shelly Beach", + "municipality": "Shelly Beach", + "countrySecondarySubdivision": "Hibiscus Coast", + "countrySubdivision": "KwaZulu-Natal", + "postalCode": "4265", + "countryCode": "ZA", + "country": "South Africa", + "countryCodeISO3": "ZAF", + "freeformAddress": "Shelly Beach, Hibiscus Coast, KwaZulu-Natal, 4265", + "localName": "Shelly Beach" + }, + "position": { + "lat": -30.79937, + "lon": 30.40569 + }, + "viewport": { + "topLeftPoint": { + "lat": -30.79847, + "lon": 30.40464 + }, + "btmRightPoint": { + "lat": -30.80027, + "lon": 30.40674 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": -30.7994, + "lon": 30.40618 + } + } + ] + }, + { + "type": "POI", + "id": "ZA/POI/p0/489976", + "score": 2.226, + "info": "search:ta:710009004261897-ZA", + "poi": { + "name": "Seattle Cofee Co", + "phone": "+(27)-(39)-3150816", + "brands": [ + { + "name": "Seattle Coffee Company" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.seattlecoffeecompany.co.za", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "municipalitySubdivision": "Shelly Beach", + "municipality": "Shelly Beach", + "countrySecondarySubdivision": "Hibiscus Coast", + "countrySubdivision": "KwaZulu-Natal", + "postalCode": "4265", + "countryCode": "ZA", + "country": "South Africa", + "countryCodeISO3": "ZAF", + "freeformAddress": "Shelly Beach, Hibiscus Coast, KwaZulu-Natal, 4265", + "localName": "Shelly Beach" + }, + "position": { + "lat": -30.79801, + "lon": 30.40557 + }, + "viewport": { + "topLeftPoint": { + "lat": -30.79711, + "lon": 30.40452 + }, + "btmRightPoint": { + "lat": -30.79891, + "lon": 30.40662 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": -30.79784, + "lon": 30.40523 + } + } + ] + }, + { + "type": "POI", + "id": "ZA/POI/p0/490056", + "score": 2.226, + "info": "search:ta:710009004149612-ZA", + "poi": { + "name": "Seattle Coffee Co - Constantia Village", + "brands": [ + { + "name": "Seattle Coffee Company" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.seattlecoffeecompany.co.za", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetName": "Constantia Main Road", + "municipalitySubdivision": "Cape Town", + "municipality": "Cape Town", + "countrySecondarySubdivision": "City of Cape Town", + "countrySubdivision": "Western Cape", + "postalCode": "7708", + "countryCode": "ZA", + "country": "South Africa", + "countryCodeISO3": "ZAF", + "freeformAddress": "Constantia Main Road, Constantia, City of Cape Town, Western Cape, 7708", + "localName": "Constantia" + }, + "position": { + "lat": -34.02087, + "lon": 18.44503 + }, + "viewport": { + "topLeftPoint": { + "lat": -34.01997, + "lon": 18.44394 + }, + "btmRightPoint": { + "lat": -34.02177, + "lon": 18.44612 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": -34.02017, + "lon": 18.44476 + } + } + ] + }, + { + "type": "POI", + "id": "ZA/POI/p0/494340", + "score": 2.226, + "info": "search:ta:710009004152570-ZA", + "poi": { + "name": "Seattle Coffee Co - Canal Walk Shopping Centre", + "brands": [ + { + "name": "Seattle Coffee Company" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.seattlecoffeecompany.co.za", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetName": "Century Boulevard", + "municipalitySubdivision": "Milnerton", + "municipality": "Cape Town", + "countrySecondarySubdivision": "City of Cape Town", + "countrySubdivision": "Western Cape", + "postalCode": "7441", + "countryCode": "ZA", + "country": "South Africa", + "countryCodeISO3": "ZAF", + "freeformAddress": "Century Boulevard, Century City, City of Cape Town, Western Cape, 7441", + "localName": "Century City" + }, + "position": { + "lat": -33.89348, + "lon": 18.5122 + }, + "viewport": { + "topLeftPoint": { + "lat": -33.89258, + "lon": 18.51112 + }, + "btmRightPoint": { + "lat": -33.89438, + "lon": 18.51328 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": -33.8943, + "lon": 18.51328 + } + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchNearby.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchNearby.json new file mode 100644 index 000000000000..ceae81b5d908 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchNearby.json @@ -0,0 +1,763 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "lat": 40.706270, + "lon": -74.011454, + "radius": 8046, + "limit": 10, + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "summary": { + "queryType": "NEARBY", + "queryTime": 137, + "numResults": 10, + "offset": 0, + "totalResults": 256620, + "fuzzyLevel": 1, + "geoBias": { + "lat": 40.70627, + "lon": -74.011454 + } + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p1/7652731", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840369002225435-US", + "poi": { + "name": "Ycd Multimedia", + "phone": "+(1)-(212)-5091049", + "categorySet": [ + { + "id": 9152 + } + ], + "classifications": [ + { + "code": "NON_GOVERNMENTAL_ORGANIZATION", + "names": [ + { + "nameLocale": "en-US", + "name": "non governmental organization" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/7652732", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840369001882610-US", + "poi": { + "name": "Grubb & Ellis Management Services", + "phone": "+(1)-(212)-7851619", + "categorySet": [ + { + "id": 9352039 + } + ], + "classifications": [ + { + "code": "COMPANY", + "names": [ + { + "nameLocale": "en-US", + "name": "company" + }, + { + "nameLocale": "en-US", + "name": "services" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/7652735", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840369001322824-US", + "poi": { + "name": "Hispanic Federation", + "phone": "+(1)-(212)-7420480", + "categorySet": [ + { + "id": 9910004 + } + ], + "url": "Hispanicfederation.org", + "classifications": [ + { + "code": "AUTOMOTIVE_DEALER", + "names": [ + { + "nameLocale": "en-US", + "name": "boat" + }, + { + "nameLocale": "en-US", + "name": "automotive dealer" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/7652736", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840369000631230-US", + "poi": { + "name": "Edwin Gould Foundation", + "phone": "+(1)-(212)-9825200", + "categorySet": [ + { + "id": 9152 + } + ], + "url": "edwingouldfoundation.org", + "classifications": [ + { + "code": "NON_GOVERNMENTAL_ORGANIZATION", + "names": [ + { + "nameLocale": "en-US", + "name": "non governmental organization" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/7652737", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840369001196585-US", + "poi": { + "name": "Newmark Grubb Knight Frank", + "phone": "+(1)-(646)-6951990", + "categorySet": [ + { + "id": 9361015 + } + ], + "url": "www.newmarkkf.com", + "classifications": [ + { + "code": "SHOP", + "names": [ + { + "nameLocale": "en-US", + "name": "shop" + }, + { + "nameLocale": "en-US", + "name": "real estate agents" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/7652738", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840369002164164-US", + "poi": { + "name": "Sponsors For Educational Opportunity", + "phone": "+(1)-(212)-7851361", + "categorySet": [ + { + "id": 9152 + } + ], + "url": "www.seo-usa.org", + "classifications": [ + { + "code": "NON_GOVERNMENTAL_ORGANIZATION", + "names": [ + { + "nameLocale": "en-US", + "name": "non governmental organization" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/7373205", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840361001736646-US", + "poi": { + "name": "Visiting Nurse Service", + "phone": "+(1)-(212)-7428259", + "categorySet": [ + { + "id": 9663 + } + ], + "url": "www.vnsny.org", + "classifications": [ + { + "code": "HEALTH_CARE_SERVICE", + "names": [ + { + "nameLocale": "en-US", + "name": "health care service" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/7373206", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840361001326915-US", + "poi": { + "name": "Hispanic In Philanthropy", + "phone": "+(1)-(646)-2777101", + "categorySet": [ + { + "id": 9152 + } + ], + "url": "www.hiponline.org", + "classifications": [ + { + "code": "NON_GOVERNMENTAL_ORGANIZATION", + "names": [ + { + "nameLocale": "en-US", + "name": "non governmental organization" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/7373207", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840369002316633-US", + "poi": { + "name": "Advantage Technical Resourcing", + "phone": "+(1)-(212)-2691140", + "categorySet": [ + { + "id": 9352039 + } + ], + "classifications": [ + { + "code": "COMPANY", + "names": [ + { + "nameLocale": "en-US", + "name": "company" + }, + { + "nameLocale": "en-US", + "name": "services" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/7373208", + "score": 1, + "dist": 14.736843483489132, + "info": "search:ta:840369002031974-US", + "poi": { + "name": "Workshop In Bus Opportunities", + "phone": "+(1)-(212)-6840854", + "categorySet": [ + { + "id": 9352039 + } + ], + "url": "www.wibo.org", + "classifications": [ + { + "code": "COMPANY", + "names": [ + { + "nameLocale": "en-US", + "name": "company" + }, + { + "nameLocale": "en-US", + "name": "services" + } + ] + } + ] + }, + "address": { + "streetNumber": "55", + "streetName": "Exchange Pl", + "municipalitySubdivision": "New York City, NYC, New York, Financial District", + "municipality": "Wall Street, New York City, NYC, NY City, NY, Manhattan, Bowling Green, New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "extendedPostalCode": "100042320", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "55 Exchange Pl, New York, NY 10004", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.7064, + "lon": -74.01142 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.7073, + "lon": -74.01261 + }, + "btmRightPoint": { + "lat": 40.7055, + "lon": -74.01023 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.70636, + "lon": -74.01145 + } + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPOI.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPOI.json new file mode 100644 index 000000000000..308853a33a68 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPOI.json @@ -0,0 +1,457 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "juice bars", + "subscription-key": "[subscription-key]", + "limit": 5, + "lat": 47.606038, + "lon": -122.333345, + "radius": 8046 + }, + "responses": { + "200": { + "body": { + "summary": { + "query": "juice bars", + "queryType": "NON_NEAR", + "queryTime": 36, + "numResults": 5, + "offset": 0, + "totalResults": 12, + "fuzzyLevel": 1, + "geoBias": { + "lat": 47.606038, + "lon": -122.333345 + } + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p0/9223158", + "score": 5.664, + "dist": 667.2710170950347, + "info": "search:ta:840539001755244-US", + "poi": { + "name": "Pressed Juicery", + "phone": "+(1)-(206)-6240804", + "brands": [ + { + "name": "Pressed Juicery" + } + ], + "categorySet": [ + { + "id": 7315149 + } + ], + "url": "www.pressedjuicery.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "yogurt/juice bar" + }, + { + "nameLocale": "en-US", + "name": "restaurant" + } + ] + } + ] + }, + "address": { + "streetNumber": "400", + "streetName": "Pine St", + "municipalitySubdivision": "Seattle, Central Business District", + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "countrySubdivision": "WA", + "postalCode": "98101", + "extendedPostalCode": "981011628", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "400 Pine St, Seattle, WA 98101", + "localName": "Seattle", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.61138, + "lon": -122.3374 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.61228, + "lon": -122.33873 + }, + "btmRightPoint": { + "lat": 47.61048, + "lon": -122.33607 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.61134, + "lon": -122.33737 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/9222534", + "score": 5.663, + "dist": 1101.6849025777728, + "info": "search:ta:840539001760125-US", + "poi": { + "name": "Pressed Juicery", + "phone": "+(1)-(206)-4533785", + "brands": [ + { + "name": "Pressed Juicery" + } + ], + "categorySet": [ + { + "id": 7315149 + } + ], + "url": "www.pressedjuicery.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "yogurt/juice bar" + }, + { + "nameLocale": "en-US", + "name": "restaurant" + } + ] + } + ] + }, + "address": { + "streetNumber": "315", + "streetName": "E Pine St", + "municipalitySubdivision": "Seattle, Broadway", + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "countrySubdivision": "WA", + "postalCode": "98122", + "extendedPostalCode": "9812200", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "315 E Pine St, Seattle, WA 98122", + "localName": "Seattle", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.61518, + "lon": -122.32768 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.61608, + "lon": -122.32901 + }, + "btmRightPoint": { + "lat": 47.61428, + "lon": -122.32635 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.61523, + "lon": -122.32768 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/9133689", + "score": 5.659, + "dist": 2649.8700791555398, + "info": "search:ta:840539001339220-US", + "poi": { + "name": "Pressed Juicery", + "phone": "+(1)-(206)-2820651", + "brands": [ + { + "name": "Pressed Juicery" + } + ], + "categorySet": [ + { + "id": 7315149 + } + ], + "url": "www.pressedjuicery.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "yogurt/juice bar" + }, + { + "nameLocale": "en-US", + "name": "restaurant" + } + ] + } + ] + }, + "address": { + "streetNumber": "604", + "streetName": "1st Ave N", + "municipalitySubdivision": "Seattle, Lower Queen Anne", + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "countrySubdivision": "WA", + "postalCode": "98109", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "604 1st Ave N, Seattle, WA 98109", + "localName": "Seattle", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.6247, + "lon": -122.35533 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.6256, + "lon": -122.35666 + }, + "btmRightPoint": { + "lat": 47.6238, + "lon": -122.354 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.6247, + "lon": -122.3554 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/9131285", + "score": 5.646, + "dist": 5097.757019046541, + "info": "search:ta:840539001743255-US", + "poi": { + "name": "Custom Smoothie & Sports Nutrition", + "phone": "+(1)-(206)-5475522", + "categorySet": [ + { + "id": 7315149 + } + ], + "url": "www.customsmoothie.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "yogurt/juice bar" + }, + { + "nameLocale": "en-US", + "name": "restaurant" + } + ] + } + ] + }, + "address": { + "streetNumber": "462", + "streetName": "N 34th St", + "municipalitySubdivision": "Seattle, Fremont", + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "countrySubdivision": "WA", + "postalCode": "98103", + "extendedPostalCode": "981038600", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "462 N 34th St, Seattle, WA 98103", + "localName": "Seattle", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.65016, + "lon": -122.35182 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.65106, + "lon": -122.35315 + }, + "btmRightPoint": { + "lat": 47.64926, + "lon": -122.35049 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.64991, + "lon": -122.3519 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/9228250", + "score": 5.637, + "dist": 6235.798481758295, + "info": "search:ta:840531000416784-US", + "poi": { + "name": "Jamba Juice", + "phone": "+(1)-(206)-6322060", + "brands": [ + { + "name": "Jamba Juice" + } + ], + "categorySet": [ + { + "id": 7315149 + } + ], + "url": "www.jambajuice.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "yogurt/juice bar" + }, + { + "nameLocale": "en-US", + "name": "restaurant" + } + ] + } + ] + }, + "address": { + "streetNumber": "4555", + "streetName": "Stone Way N", + "municipalitySubdivision": "Wallingford, Seattle", + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "countrySubdivision": "WA", + "postalCode": "98103", + "extendedPostalCode": "981036600", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "4555 Stone Way N, Seattle, WA 98103", + "localName": "Seattle", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.66179, + "lon": -122.34233 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.66269, + "lon": -122.34367 + }, + "btmRightPoint": { + "lat": 47.66089, + "lon": -122.34099 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.66188, + "lon": -122.34211 + } + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPOICategory.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPOICategory.json new file mode 100644 index 000000000000..a54650c2539c --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPOICategory.json @@ -0,0 +1,275 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "atm", + "subscription-key": "[subscription-key]", + "limit": 3, + "lat": 40.758953, + "lon": -73.985263, + "radius": 3200 + }, + "responses": { + "200": { + "body": { + "summary": { + "query": "atm", + "queryType": "NON_NEAR", + "queryTime": 28, + "numResults": 3, + "offset": 0, + "totalResults": 3696, + "fuzzyLevel": 1, + "geoBias": { + "lat": 40.758953, + "lon": -73.985263 + } + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p0/7014613", + "score": 2.575, + "dist": 10.743802093311858, + "info": "search:ta:840369001846523-US", + "poi": { + "name": "FISERV MASTERMONEY", + "categorySet": [ + { + "id": 7397 + } + ], + "classifications": [ + { + "code": "CASH_DISPENSER", + "names": [ + { + "nameLocale": "en-US", + "name": "cash dispenser" + } + ] + } + ] + }, + "address": { + "streetNumber": "1560", + "streetName": "Broadway", + "municipalitySubdivision": "Times Square, New York, Midtown", + "municipality": "New York, Manhattan", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10036", + "extendedPostalCode": "100361517", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "1560 Broadway, New York, NY 10036", + "localName": "New York", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.75901, + "lon": -73.98516 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.75991, + "lon": -73.98635 + }, + "btmRightPoint": { + "lat": 40.75811, + "lon": -73.98397 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.75902, + "lon": -73.98522 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/6830011", + "score": 2.575, + "dist": 58.68107354501256, + "info": "search:ta:840369011803697-US", + "poi": { + "name": "METABANK", + "categorySet": [ + { + "id": 7397 + } + ], + "classifications": [ + { + "code": "CASH_DISPENSER", + "names": [ + { + "nameLocale": "en-US", + "name": "cash dispenser" + } + ] + } + ] + }, + "address": { + "streetNumber": "1567", + "streetName": "Broadway", + "municipalitySubdivision": "Times Square, New York, Midtown", + "municipality": "New York, Manhattan", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10036", + "extendedPostalCode": "100361517", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "1567 Broadway, New York, NY 10036", + "localName": "New York", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.75937, + "lon": -73.98569 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.76027, + "lon": -73.98688 + }, + "btmRightPoint": { + "lat": 40.75847, + "lon": -73.9845 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.75924, + "lon": -73.98513 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/6830013", + "score": 2.575, + "dist": 55.009653221373966, + "info": "search:ta:840369010525390-US", + "poi": { + "name": "ATM", + "categorySet": [ + { + "id": 7397 + } + ], + "classifications": [ + { + "code": "CASH_DISPENSER", + "names": [ + { + "nameLocale": "en-US", + "name": "cash dispenser" + } + ] + } + ] + }, + "address": { + "streetNumber": "1552", + "streetName": "Broadway", + "municipalitySubdivision": "Times Square, New York, Midtown", + "municipality": "New York, Manhattan", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10036", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "1552 Broadway, New York, NY 10036", + "localName": "New York", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.75873, + "lon": -73.98468 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.75963, + "lon": -73.98587 + }, + "btmRightPoint": { + "lat": 40.75783, + "lon": -73.98349 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.7588, + "lon": -73.98492 + } + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPolygon.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPolygon.json new file mode 100644 index 000000000000..46186f7c933a --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/GetSearchPolygon.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "geometries": "[geometry-ids]", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "additionalData": [ + { + "providerID": "1111-2222-32-4444444444444", + "geometryData": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "properties": {}, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -122.0665062, + 47.6496252 + ], + [ + -122.0664863, + 47.6496113 + ], + [ + -122.0664843, + 47.6496014 + ], + [ + -122.0663693, + 47.6495247 + ], + [ + -122.0663017, + 47.6494664 + ], + [ + -122.0662679, + 47.6494247 + ], + [ + -122.0661647, + 47.6493314 + ], + [ + -122.067177, + 47.649298 + ], + [ + -122.090715, + 47.6543598 + ], + [ + -122.0907846, + 47.6542921 + ], + [ + -122.0908284, + 47.6542603 + ] + ] + ] + }, + "id": "1111-2222-32-4444444444444" + } + ] + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAddressBatch.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAddressBatch.json new file mode 100644 index 000000000000..6db886460bff --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAddressBatch.json @@ -0,0 +1,351 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "searchAddressBatchRequestBody": { + "batchItems": [ + { + "query": "?query=400 Broad St, Seattle, WA 98109&limit=3" + }, + { + "query": "?query=One, Microsoft Way, Redmond, WA 98052&limit=3" + }, + { + "query": "?query=350 5th Ave, New York, NY 10118&limit=1" + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "summary": { + "successfulRequests": 3, + "totalRequests": 3 + }, + "batchItems": [ + { + "statusCode": 200, + "response": { + "summary": { + "query": "400 broad st seattle wa 98109", + "queryType": "NON_NEAR", + "queryTime": 127, + "numResults": 3, + "offset": 0, + "totalResults": 9, + "fuzzyLevel": 1 + }, + "results": [ + { + "type": "Point Address", + "id": "US/PAD/p0/20843845", + "score": 11.966, + "address": { + "streetNumber": "400", + "streetName": "Broad Street", + "municipalitySubdivision": "Seattle, South Lake Union, Lower Queen Anne", + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "countrySubdivision": "WA", + "postalCode": "98109", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "400 Broad Street, Seattle, WA 98109", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.62039, + "lon": -122.34928 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.62129, + "lon": -122.35061 + }, + "btmRightPoint": { + "lat": 47.61949, + "lon": -122.34795 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.61982, + "lon": -122.34886 + } + } + ] + }, + { + "type": "Street", + "id": "US/STR/p0/388442", + "score": 10.225, + "address": { + "streetName": "Broad Street", + "municipalitySubdivision": "Seattle, South Lake Union", + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "countrySubdivision": "WA", + "postalCode": "98109", + "extendedPostalCode": "981094612", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "Broad Street, Seattle, WA 98109", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.62001, + "lon": -122.34843 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.61965, + "lon": -122.34761 + }, + "btmRightPoint": { + "lat": 47.62066, + "lon": -122.349 + } + } + }, + { + "type": "Street", + "id": "US/STR/p0/388680", + "score": 10.225, + "address": { + "streetName": "Broad Street", + "municipalitySubdivision": "Seattle, Belltown", + "municipality": "Seattle", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "countrySubdivision": "WA", + "postalCode": "98109,98121", + "extendedPostalCode": "981094991,981211117,981211237,981213206", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "Broad Street, Seattle, WA", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.61691, + "lon": -122.35251 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.61502, + "lon": -122.35041 + }, + "btmRightPoint": { + "lat": 47.61857, + "lon": -122.35484 + } + } + } + ] + } + }, + { + "statusCode": 200, + "response": { + "summary": { + "query": "one microsoft way redmond wa 98052", + "queryType": "NON_NEAR", + "queryTime": 169, + "numResults": 2, + "offset": 0, + "totalResults": 3292, + "fuzzyLevel": 2 + }, + "results": [ + { + "type": "Street", + "id": "US/STR/p0/1692663", + "score": 10.225, + "address": { + "streetName": "Microsoft Way", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980526399,980528300", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "Microsoft Way, Redmond, WA 98052", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.63989, + "lon": -122.12509 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.63748, + "lon": -122.12309 + }, + "btmRightPoint": { + "lat": 47.64223, + "lon": -122.13061 + } + } + }, + { + "type": "Cross Street", + "id": "US/XSTR/p1/4779971", + "score": 8.506, + "address": { + "streetName": "Microsoft Way & 157th Avenue Northeast, Microsoft Way", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "Microsoft Way & 157th Avenue Northeast, Redmond, WA 98052", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.63962, + "lon": -122.13061 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.64052, + "lon": -122.13194 + }, + "btmRightPoint": { + "lat": 47.63872, + "lon": -122.12928 + } + } + } + ] + } + }, + { + "statusCode": 200, + "response": { + "summary": { + "query": "350 5th ave new york ny 10118", + "queryType": "NON_NEAR", + "queryTime": 233, + "numResults": 1, + "offset": 0, + "totalResults": 8032, + "fuzzyLevel": 1 + }, + "results": [ + { + "type": "Point Address", + "id": "US/PAD/p0/48052000", + "score": 14.334, + "address": { + "streetNumber": "350", + "streetName": "5th Avenue", + "municipalitySubdivision": "New York, Midtown South", + "municipality": "New York, Manhattan", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10118", + "extendedPostalCode": "1011800", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "350 5th Avenue, NYC, NY 10118", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.74817, + "lon": -73.985 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.74907, + "lon": -73.98619 + }, + "btmRightPoint": { + "lat": 40.74727, + "lon": -73.98381 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.74808, + "lon": -73.98482 + } + } + ] + } + ] + } + } + ] + } + }, + "202": { + "headers": { + "Location": "URL to download the results of the long-running batch request." + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAddressReverseBatch.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAddressReverseBatch.json new file mode 100644 index 000000000000..91a8a6bcd46b --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAddressReverseBatch.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "searchAddressReverseBatchRequestBody": { + "batchItems": [ + { + "query": "?query=48.858561,2.294911" + }, + { + "query": "?query=47.639765,-122.127896&radius=5000&limit=2" + }, + { + "query": "?query=47.621028,-122.348170" + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "summary": { + "successfulRequests": 3, + "totalRequests": 3 + }, + "batchItems": [ + { + "statusCode": 200, + "response": { + "summary": { + "queryTime": 8, + "numResults": 1 + }, + "addresses": [ + { + "address": { + "buildingNumber": "7", + "streetNumber": "7", + "routeNumbers": [], + "street": "Avenue Anatole France", + "streetName": "Avenue Anatole France", + "streetNameAndNumber": "7 Avenue Anatole France", + "countryCode": "FR", + "countrySubdivision": "Île-de-France", + "countrySecondarySubdivision": "Paris", + "municipality": "Paris", + "postalCode": "75007", + "municipalitySubdivision": "7ème Arrondissement", + "country": "France", + "countryCodeISO3": "FRA", + "freeformAddress": "7 Avenue Anatole France, Paris, 75007", + "boundingBox": { + "northEast": "48.858321,2.295167", + "southWest": "48.858136,2.295027", + "entity": "position" + } + }, + "position": "48.858231,2.295089" + } + ] + } + }, + { + "statusCode": 200, + "response": { + "summary": { + "queryTime": 8, + "numResults": 1 + }, + "addresses": [ + { + "address": { + "routeNumbers": [], + "countryCode": "US", + "countrySubdivision": "WA", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "municipality": "Redmond", + "postalCode": "98052", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "Redmond, WA 98052", + "boundingBox": { + "northEast": "47.639765,-122.128661", + "southWest": "47.639502,-122.129456", + "entity": "position" + }, + "countrySubdivisionName": "Washington" + }, + "position": "47.639687,-122.128677" + } + ] + } + }, + { + "statusCode": 200, + "response": { + "summary": { + "queryTime": 19, + "numResults": 1 + }, + "addresses": [ + { + "address": { + "buildingNumber": "410", + "streetNumber": "410", + "routeNumbers": [], + "street": "Thomas Street", + "streetName": "Thomas Street", + "streetNameAndNumber": "410 Thomas Street", + "countryCode": "US", + "countrySubdivision": "WA", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle", + "municipality": "Seattle", + "postalCode": "98109", + "municipalitySubdivision": "Seattle, Lower Queen Anne", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "410 Thomas Street, Seattle, WA 98109", + "boundingBox": { + "northEast": "47.620954,-122.347601", + "southWest": "47.620944,-122.348498", + "entity": "position" + }, + "extendedPostalCode": "981094621", + "countrySubdivisionName": "Washington" + }, + "position": "47.620945,-122.348175" + } + ] + } + } + ] + } + }, + "202": { + "headers": { + "Location": "URL to download the results of the long-running batch request." + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAlongRoute.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAlongRoute.json new file mode 100644 index 000000000000..dd9fdb3a7301 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchAlongRoute.json @@ -0,0 +1,249 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "burger", + "maxDetourTime": 1000, + "limit": 2, + "subscription-key": "[subscription-key]", + "searchAlongRouteRequestBody": { + "route": { + "type": "LineString", + "coordinates": [ + [ + -122.143035, + 47.653536 + ], + [ + -122.187164, + 47.617556 + ], + [ + -122.114981, + 47.570599 + ], + [ + -122.132756, + 47.654009 + ] + ] + } + } + }, + "responses": { + "200": { + "body": { + "summary": { + "query": "burger", + "queryType": "NON_NEAR", + "queryTime": 394, + "numResults": 2, + "offset": 0, + "totalResults": 2, + "fuzzyLevel": 1 + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p0/8596348", + "score": 3.104, + "dist": 1754.9604168059973, + "info": "search:ta:840531000465150-US", + "poi": { + "name": "BURGER KING", + "phone": "+(1)-(425)-7467508", + "brands": [ + { + "name": "BURGER KING" + } + ], + "categorySet": [ + { + "id": 7315015 + } + ], + "url": "www.burgerking.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "restaurant" + }, + { + "nameLocale": "en-US", + "name": "fast food" + } + ] + } + ] + }, + "address": { + "streetNumber": "14620", + "streetName": "NE 24th St", + "municipalitySubdivision": "Crossroads, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98007", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "14620 NE 24th St, Bellevue, WA 98007", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.63188, + "lon": -122.14462 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.63278, + "lon": -122.14595 + }, + "btmRightPoint": { + "lat": 47.63098, + "lon": -122.14329 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.63155, + "lon": -122.14462 + } + } + ], + "detourTime": -55 + }, + { + "type": "POI", + "id": "US/POI/p0/8596112", + "score": 3.111, + "dist": 161.17565489389224, + "info": "search:ta:840531000465149-US", + "poi": { + "name": "BURGER KING", + "phone": "+(1)-(425)-4535775", + "brands": [ + { + "name": "BURGER KING" + } + ], + "categorySet": [ + { + "id": 7315015 + } + ], + "url": "www.burgerking.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "restaurant" + }, + { + "nameLocale": "en-US", + "name": "fast food" + } + ] + } + ] + }, + "address": { + "streetNumber": "11723", + "streetName": "NE 8th St", + "municipalitySubdivision": "Willburton, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98005", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "11723 NE 8th St, Bellevue, WA 98005", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.61683, + "lon": -122.18338 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.61773, + "lon": -122.18471 + }, + "btmRightPoint": { + "lat": 47.61593, + "lon": -122.18205 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.61723, + "lon": -122.1834 + } + } + ], + "detourTime": 12 + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchFuzzyBatch.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchFuzzyBatch.json new file mode 100644 index 000000000000..c9aa1bd64ebe --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchFuzzyBatch.json @@ -0,0 +1,1454 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "searchFuzzyBatchRequestBody": { + "batchItems": [ + { + "query": "?query=atm&lat=47.639769&lon=-122.128362&radius=5000&limit=5" + }, + { + "query": "?query=Statue Of Liberty&limit=2" + }, + { + "query": "?query=Starbucks&lat=47.639769&lon=-122.128362&radius=5000" + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "batchItems": [ + { + "statusCode": 200, + "response": { + "summary": { + "query": "atm", + "queryType": "NON_NEAR", + "queryTime": 5, + "numResults": 5, + "offset": 0, + "totalResults": 262, + "fuzzyLevel": 1, + "geoBias": { + "lat": 47.639769, + "lon": -122.128362 + } + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p0/3656546", + "score": 2.671, + "dist": 1336.1815386162032, + "info": "search:ta:840539002005905-US", + "poi": { + "name": "US Bank ATM-MONEYPASS", + "brands": [ + { + "name": "US Bank ATM" + } + ], + "categorySet": [ + { + "id": 7397 + } + ], + "classifications": [ + { + "code": "CASH_DISPENSER", + "names": [ + { + "nameLocale": "en-US", + "name": "cash dispenser" + } + ] + } + ] + }, + "address": { + "streetNumber": "14808", + "streetName": "NE 24th St", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "14808 NE 24th St, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.63229, + "lon": -122.14232 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.63319, + "lon": -122.14365 + }, + "btmRightPoint": { + "lat": 47.63139, + "lon": -122.14099 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.63154, + "lon": -122.1423 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/8673325", + "score": 2.671, + "dist": 1206.8488178244172, + "info": "search:ta:840539002022072-US", + "poi": { + "name": "US Bank ATM NATIONAL ASSOCIATION", + "brands": [ + { + "name": "US Bank ATM" + } + ], + "categorySet": [ + { + "id": 7397 + } + ], + "classifications": [ + { + "code": "CASH_DISPENSER", + "names": [ + { + "nameLocale": "en-US", + "name": "cash dispenser" + } + ] + } + ] + }, + "address": { + "streetNumber": "15000", + "streetName": "Northeast 24Th Street", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980525522", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "15000 Northeast 24Th Street, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.63265, + "lon": -122.14052 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.63355, + "lon": -122.14185 + }, + "btmRightPoint": { + "lat": 47.63175, + "lon": -122.13919 + } + }, + "entryPoints": [ + { + "type": "minor", + "position": { + "lat": 47.63156, + "lon": -122.14056 + } + }, + { + "type": "minor", + "position": { + "lat": 47.63156, + "lon": -122.14058 + } + }, + { + "type": "main", + "position": { + "lat": 47.63156, + "lon": -122.14048 + } + }, + { + "type": "main", + "position": { + "lat": 47.6324, + "lon": -122.13938 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/2736315", + "score": 2.671, + "dist": 864.75917765198585, + "info": "search:ta:840539002187855-US", + "poi": { + "name": "US Bank ATM-MONEYPASS", + "brands": [ + { + "name": "US Bank ATM" + } + ], + "categorySet": [ + { + "id": 7397 + } + ], + "classifications": [ + { + "code": "CASH_DISPENSER", + "names": [ + { + "nameLocale": "en-US", + "name": "cash dispenser" + } + ] + } + ] + }, + "address": { + "streetNumber": "15521", + "streetName": "Bel Red Rd", + "municipalitySubdivision": "Redmond, Northeast Bellevue, Bellevue", + "municipality": "Redmond, Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980525501", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "15521 Bel Red Rd, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.63259, + "lon": -122.1328 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.63349, + "lon": -122.13413 + }, + "btmRightPoint": { + "lat": 47.63169, + "lon": -122.13147 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.63255, + "lon": -122.13275 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/3656412", + "score": 2.67, + "dist": 2140.1985385809412, + "info": "search:ta:840539001998867-US", + "poi": { + "name": "US Bank ATM NATIONAL ASSOCIATION", + "brands": [ + { + "name": "US Bank ATM" + } + ], + "categorySet": [ + { + "id": 7397 + } + ], + "classifications": [ + { + "code": "CASH_DISPENSER", + "names": [ + { + "nameLocale": "en-US", + "name": "cash dispenser" + } + ] + } + ] + }, + "address": { + "streetNumber": "1128", + "streetName": "156th Ave NE", + "municipalitySubdivision": "Crossroads, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98007", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "1128 156th Ave NE, Bellevue, WA 98007", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.62069, + "lon": -122.13213 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.62159, + "lon": -122.13346 + }, + "btmRightPoint": { + "lat": 47.61979, + "lon": -122.1308 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.62069, + "lon": -122.13236 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/2736876", + "score": 2.67, + "dist": 2140.1985385809412, + "info": "search:ta:840539001396789-US", + "poi": { + "name": "US Bank ATM", + "phone": "+(1)-(800)-8722657", + "brands": [ + { + "name": "US Bank ATM" + } + ], + "categorySet": [ + { + "id": 7397 + } + ], + "url": "www.usbank.com", + "classifications": [ + { + "code": "CASH_DISPENSER", + "names": [ + { + "nameLocale": "en-US", + "name": "cash dispenser" + } + ] + } + ] + }, + "address": { + "streetNumber": "1128", + "streetName": "156th Ave NE", + "municipalitySubdivision": "Crossroads, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98007", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "1128 156th Ave NE, Bellevue, WA 98007", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.62069, + "lon": -122.13213 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.62159, + "lon": -122.13346 + }, + "btmRightPoint": { + "lat": 47.61979, + "lon": -122.1308 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.62069, + "lon": -122.13236 + } + } + ] + } + ] + } + }, + { + "statusCode": 200, + "response": { + "summary": { + "query": "statue of liberty", + "queryType": "NON_NEAR", + "queryTime": 37, + "numResults": 2, + "offset": 0, + "totalResults": 18, + "fuzzyLevel": 1 + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p0/9189660", + "score": 6.942, + "info": "search:ta:840369001174316-US", + "poi": { + "name": "Statue of Liberty", + "categorySet": [ + { + "id": 7376003 + } + ], + "classifications": [ + { + "code": "IMPORTANT_TOURIST_ATTRACTION", + "names": [ + { + "nameLocale": "en-US", + "name": "monument" + }, + { + "nameLocale": "en-US", + "name": "important tourist attraction" + } + ] + } + ] + }, + "address": { + "municipalitySubdivision": "New York", + "municipality": "New York", + "countrySecondarySubdivision": "New York", + "countryTertiarySubdivision": "Manhattan", + "countrySubdivision": "NY", + "postalCode": "10004", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "New York, NY 10004", + "localName": "New York", + "countrySubdivisionName": "New York" + }, + "position": { + "lat": 40.68955, + "lon": -74.04483 + }, + "viewport": { + "topLeftPoint": { + "lat": 40.69045, + "lon": -74.04602 + }, + "btmRightPoint": { + "lat": 40.68865, + "lon": -74.04364 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 40.69001, + "lon": -74.04683 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/3264566", + "score": 6.942, + "info": "search:ta:840019000670588-US", + "poi": { + "name": "Statue of Liberty", + "phone": "+(1)-(205)-9700251", + "categorySet": [ + { + "id": 7376003 + } + ], + "url": "www.1bsa.org", + "classifications": [ + { + "code": "IMPORTANT_TOURIST_ATTRACTION", + "names": [ + { + "nameLocale": "en-US", + "name": "important tourist attraction" + } + ] + } + ] + }, + "address": { + "streetNumber": "516", + "streetName": "Liberty Pkwy", + "municipalitySubdivision": "Vestavia Hills", + "municipality": "Vestavia Hills, Birmingham", + "countrySecondarySubdivision": "Jefferson", + "countryTertiarySubdivision": "Leeds", + "countrySubdivision": "AL", + "postalCode": "35242", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "516 Liberty Pkwy, Vestavia Hills, AL 35242", + "localName": "Vestavia Hills", + "countrySubdivisionName": "Alabama" + }, + "position": { + "lat": 33.48234, + "lon": -86.70719 + }, + "viewport": { + "topLeftPoint": { + "lat": 33.48324, + "lon": -86.70827 + }, + "btmRightPoint": { + "lat": 33.48144, + "lon": -86.70611 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 33.48129, + "lon": -86.7065 + } + } + ] + } + ] + } + }, + { + "statusCode": 200, + "response": { + "summary": { + "query": "starbucks", + "queryType": "NON_NEAR", + "queryTime": 35, + "numResults": 10, + "offset": 0, + "totalResults": 17, + "fuzzyLevel": 1, + "geoBias": { + "lat": 47.639769, + "lon": -122.128362 + } + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p0/153678", + "score": 2.671, + "dist": 1206.8488178244172, + "info": "search:ta:840531000006554-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-8695816", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.starbucks.com/site-selector", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "15000", + "streetName": "NE 24th St", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980525522", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "15000 NE 24th St, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.63265, + "lon": -122.14052 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.63355, + "lon": -122.14185 + }, + "btmRightPoint": { + "lat": 47.63175, + "lon": -122.13919 + } + }, + "entryPoints": [ + { + "type": "minor", + "position": { + "lat": 47.63156, + "lon": -122.14056 + } + }, + { + "type": "minor", + "position": { + "lat": 47.63156, + "lon": -122.14058 + } + }, + { + "type": "main", + "position": { + "lat": 47.63156, + "lon": -122.14048 + } + }, + { + "type": "main", + "position": { + "lat": 47.6324, + "lon": -122.13938 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/152316", + "score": 2.67, + "dist": 2315.294397491255, + "info": "search:ta:840539000484552-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-6436471", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.starbucks.com/store/15097", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "15600", + "streetName": "NE 8th St", + "municipalitySubdivision": "Crossroads, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98008", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "15600 NE 8th St, Bellevue, WA 98008", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.61896, + "lon": -122.12945 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.61986, + "lon": -122.13078 + }, + "btmRightPoint": { + "lat": 47.61806, + "lon": -122.12812 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.619, + "lon": -122.12945 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/167545", + "score": 2.67, + "dist": 1979.2222952267998, + "info": "search:ta:840539001950429-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-7470690", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.starbucks.com/site-selector", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "1350", + "streetName": "156th Ave NE", + "municipalitySubdivision": "Crossroads, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98007", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "1350 156th Ave NE, Bellevue, WA 98007", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.62212, + "lon": -122.13179 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.62302, + "lon": -122.13312 + }, + "btmRightPoint": { + "lat": 47.62122, + "lon": -122.13046 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.62213, + "lon": -122.13236 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/168519", + "score": 2.67, + "dist": 2490.3337046455963, + "info": "search:ta:840539001015090-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-4556500", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "https://www.starbucks.com/store-locator/store/15901", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "1645", + "streetName": "140th Ave NE", + "municipalitySubdivision": "Crossroads, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98005", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "1645 140th Ave NE, Bellevue, WA 98005", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.62626, + "lon": -122.15487 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.62716, + "lon": -122.1562 + }, + "btmRightPoint": { + "lat": 47.62536, + "lon": -122.15354 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.62645, + "lon": -122.15446 + } + }, + { + "type": "minor", + "position": { + "lat": 47.62579, + "lon": -122.15377 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/152428", + "score": 2.668, + "dist": 3529.7080738812224, + "info": "search:ta:840539001033722-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-3789496", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.starbucks.com/site-selector", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "180", + "streetName": "148th Ave SE", + "municipalitySubdivision": "West Lake Hills, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98007", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "180 148th Ave SE, Bellevue, WA 98007", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.60901, + "lon": -122.14 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.60991, + "lon": -122.14133 + }, + "btmRightPoint": { + "lat": 47.60811, + "lon": -122.13867 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.60901, + "lon": -122.14008 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/167147", + "score": 2.668, + "dist": 3479.393294615887, + "info": "search:ta:840539000326896-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-8619198", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.starbucks.com/site-selector", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "7425", + "streetName": "166th Ave NE", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980526288", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "7425 166th Ave NE, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.67055, + "lon": -122.12001 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.67145, + "lon": -122.12135 + }, + "btmRightPoint": { + "lat": 47.66965, + "lon": -122.11867 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.67069, + "lon": -122.11889 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/153695", + "score": 2.667, + "dist": 3622.4410746187291, + "info": "search:ta:840531000006551-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-8822881", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.starbucks.com/store/15022", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "7625", + "streetName": "170th Ave NE", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980520910", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "7625 170th Ave NE, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.67086, + "lon": -122.11392 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.67176, + "lon": -122.11526 + }, + "btmRightPoint": { + "lat": 47.66996, + "lon": -122.11258 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.67073, + "lon": -122.1135 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/167420", + "score": 2.667, + "dist": 3818.293513029088, + "info": "search:ta:840539000640782-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-8853323", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.starbucks.com/site-selector", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "17246", + "streetName": "Redmond Way", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980524403", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "17246 Redmond Way, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.67174, + "lon": -122.10976 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.67264, + "lon": -122.1111 + }, + "btmRightPoint": { + "lat": 47.67084, + "lon": -122.10842 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.6706, + "lon": -122.11026 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/153686", + "score": 2.666, + "dist": 4009.9222051470738, + "info": "search:ta:840531000006548-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-8859590", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.starbucks.com/site-selector", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "15738", + "streetName": "Redmond Way Pad 3 Redmond Center", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "980523873", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "15738 Redmond Way Pad 3 Redmond Center, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.67583, + "lon": -122.12877 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.67673, + "lon": -122.13011 + }, + "btmRightPoint": { + "lat": 47.67493, + "lon": -122.12743 + } + }, + "entryPoints": [ + { + "type": "minor", + "position": { + "lat": 47.67456, + "lon": -122.12887 + } + }, + { + "type": "main", + "position": { + "lat": 47.67668, + "lon": -122.12829 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/168511", + "score": 2.666, + "dist": 3987.80992387863, + "info": "search:ta:840531000006669-US", + "poi": { + "name": "Starbucks", + "phone": "+(1)-(425)-8818265", + "brands": [ + { + "name": "Starbucks" + } + ], + "categorySet": [ + { + "id": 9376006 + } + ], + "url": "www.starbucks.com/site-selector", + "classifications": [ + { + "code": "CAFE_PUB", + "names": [ + { + "nameLocale": "en-US", + "name": "coffee shop" + }, + { + "nameLocale": "en-US", + "name": "café/pub" + } + ] + } + ] + }, + "address": { + "streetNumber": "6617", + "streetName": "132Nd Ave Ne Bridle Trails Shopping Center", + "municipalitySubdivision": "Kirkland, Bridle Trails", + "municipality": "Kirkland", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98033", + "extendedPostalCode": "980338234", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "6617 132Nd Ave Ne Bridle Trails Shopping Center, Kirkland, WA 98033", + "localName": "Kirkland", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.66514, + "lon": -122.16599 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.66604, + "lon": -122.16733 + }, + "btmRightPoint": { + "lat": 47.66424, + "lon": -122.16465 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.666, + "lon": -122.16669 + } + }, + { + "type": "minor", + "position": { + "lat": 47.66553, + "lon": -122.16405 + } + } + ] + } + ] + } + } + ], + "summary": { + "successfulRequests": 3, + "totalRequests": 3 + } + } + }, + "202": { + "headers": { + "Location": "URL to download the results of the long-running batch request." + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideFeatureCollection.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideFeatureCollection.json new file mode 100644 index 000000000000..16beafcf6e8b --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideFeatureCollection.json @@ -0,0 +1,261 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "pizza", + "limit": 2, + "subscription-key": "[subscription-key]", + "searchInsideGeometryRequestBody": { + "geometry": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -122.143035, + 47.653536 + ], + [ + -122.187164, + 47.617556 + ], + [ + -122.114981, + 47.570599 + ], + [ + -122.132756, + 47.654009 + ], + [ + -122.143035, + 47.653536 + ] + ] + ] + }, + "properties": {} + }, + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [ + -122.126986, + 47.639754 + ] + }, + "properties": { + "subType": "Circle", + "radius": 100 + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "summary": { + "query": "pizza", + "queryType": "NON_NEAR", + "queryTime": 45, + "numResults": 2, + "offset": 0, + "totalResults": 18, + "fuzzyLevel": 1 + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p1/199865", + "score": 4, + "info": "search:decarta:ta:840539000519519-US", + "poi": { + "name": "Tutta Bella", + "phone": "+(1)-(425)-5027402", + "categorySet": [ + { + "id": 7315036 + } + ], + "url": "TuttaBella.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "restaurant" + }, + { + "nameLocale": "en-US", + "name": "pizza" + } + ] + } + ] + }, + "address": { + "streetNumber": "15600", + "streetName": "NE 8th St", + "municipalitySubdivision": "Bellevue, Crossroads", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98008", + "extendedPostalCode": "980084084", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "15600 NE 8th St, Bellevue, WA 98008", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.61705, + "lon": -122.13228 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.61795, + "lon": -122.13361 + }, + "btmRightPoint": { + "lat": 47.61615, + "lon": -122.13095 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.61701, + "lon": -122.13228 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p1/205464", + "score": 4, + "info": "search:decarta:ta:840539000714286-US", + "poi": { + "name": "Q & S Food Co LLC", + "phone": "+(1)-(425)-7464764", + "categorySet": [ + { + "id": 7315036 + } + ], + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "restaurant" + }, + { + "nameLocale": "en-US", + "name": "pizza" + } + ] + } + ] + }, + "address": { + "streetNumber": "511", + "streetName": "141st Ave SE", + "municipalitySubdivision": "Bellevue, West Lake Hills", + "municipality": "Bellevue, Eastgate", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98007", + "countryCode": "US", + "country": "United States Of America", + "countryCodeISO3": "USA", + "freeformAddress": "511 141st Ave SE, Bellevue, WA 98007", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.6051, + "lon": -122.15226 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.606, + "lon": -122.15359 + }, + "btmRightPoint": { + "lat": 47.6042, + "lon": -122.15093 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.6051, + "lon": -122.15219 + } + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideGeometry.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideGeometry.json new file mode 100644 index 000000000000..91505d07f5db --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideGeometry.json @@ -0,0 +1,247 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "burger", + "limit": 2, + "subscription-key": "[subscription-key]", + "searchInsideGeometryRequestBody": { + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -122.43576049804686, + 37.7524152343544 + ], + [ + -122.43301391601562, + 37.70660472542312 + ], + [ + -122.36434936523438, + 37.712059855877314 + ], + [ + -122.43576049804686, + 37.7524152343544 + ] + ] + ] + } + } + }, + "responses": { + "200": { + "body": { + "summary": { + "query": "pizza", + "queryType": "NON_NEAR", + "queryTime": 9, + "numResults": 2, + "offset": 0, + "totalResults": 18, + "fuzzyLevel": 1 + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p0/8596331", + "score": 2.226, + "info": "search:ta:840539000722333-US", + "poi": { + "name": "Mod Pizza", + "phone": "+(1)-(425)-2149903", + "brands": [ + { + "name": "Mod Pizza" + } + ], + "categorySet": [ + { + "id": 7315036 + } + ], + "url": "https://modpizza.com/locations/bellevue-overlake", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "pizza" + }, + { + "nameLocale": "en-US", + "name": "restaurant" + } + ] + } + ] + }, + "address": { + "streetNumber": "14309", + "streetName": "NE 20th St", + "municipalitySubdivision": "Crossroads, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98007", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "14309 NE 20th St, Bellevue, WA 98007", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.62779, + "lon": -122.14971 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.62869, + "lon": -122.15104 + }, + "btmRightPoint": { + "lat": 47.62689, + "lon": -122.14838 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.62789, + "lon": -122.14977 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/8596385", + "score": 2.226, + "info": "search:ta:840539000366535-US", + "poi": { + "name": "Pizza Hut", + "phone": "+(1)-(425)-8619900", + "brands": [ + { + "name": "Pizza Hut" + } + ], + "categorySet": [ + { + "id": 7315036 + } + ], + "url": "www.pizzahut.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "pizza" + }, + { + "nameLocale": "en-US", + "name": "restaurant" + } + ] + } + ] + }, + "address": { + "streetNumber": "2560", + "streetName": "152nd Ave NE", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "9805207", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "2560 152nd Ave NE, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.63255, + "lon": -122.137 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.63345, + "lon": -122.13833 + }, + "btmRightPoint": { + "lat": 47.63165, + "lon": -122.13567 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.63255, + "lon": -122.1377 + } + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideGeometryCollection.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideGeometryCollection.json new file mode 100644 index 000000000000..d7b8f93a7da9 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/examples/PostSearchInsideGeometryCollection.json @@ -0,0 +1,275 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "pizza", + "limit": 2, + "subscription-key": "[subscription-key]", + "searchInsideGeometryRequestBody": { + "geometry": { + "type": "GeometryCollection", + "geometries": [ + { + "type": "Polygon", + "coordinates": [ + [ + [ + -122.43576049804686, + 37.7524152343544 + ], + [ + -122.43301391601563, + 37.706604725423119 + ], + [ + -122.36434936523438, + 37.712059855877314 + ], + [ + -122.43576049804686, + 37.7524152343544 + ] + ] + ] + }, + { + "type": "Polygon", + "coordinates": [ + [ + [ + -123.43576049804686, + 37.7524152343544 + ], + [ + -123.43301391601563, + 37.706604725423119 + ], + [ + -123.36434936523438, + 37.712059855877314 + ], + [ + -123.43576049804686, + 37.7524152343544 + ] + ] + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "summary": { + "query": "pizza", + "queryType": "NON_NEAR", + "queryTime": 9, + "numResults": 2, + "offset": 0, + "totalResults": 18, + "fuzzyLevel": 1 + }, + "results": [ + { + "type": "POI", + "id": "US/POI/p0/8596331", + "score": 2.226, + "info": "search:ta:840539000722333-US", + "poi": { + "name": "Mod Pizza", + "phone": "+(1)-(425)-2149903", + "brands": [ + { + "name": "Mod Pizza" + } + ], + "categorySet": [ + { + "id": 7315036 + } + ], + "url": "https://modpizza.com/locations/bellevue-overlake", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "pizza" + }, + { + "nameLocale": "en-US", + "name": "restaurant" + } + ] + } + ] + }, + "address": { + "streetNumber": "14309", + "streetName": "NE 20th St", + "municipalitySubdivision": "Crossroads, Bellevue", + "municipality": "Bellevue", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98007", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "14309 NE 20th St, Bellevue, WA 98007", + "localName": "Bellevue", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.62779, + "lon": -122.14971 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.62869, + "lon": -122.15104 + }, + "btmRightPoint": { + "lat": 47.62689, + "lon": -122.14838 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.62789, + "lon": -122.14977 + } + } + ] + }, + { + "type": "POI", + "id": "US/POI/p0/8596385", + "score": 2.226, + "info": "search:ta:840539000366535-US", + "poi": { + "name": "Pizza Hut", + "phone": "+(1)-(425)-8619900", + "brands": [ + { + "name": "Pizza Hut" + } + ], + "categorySet": [ + { + "id": 7315036 + } + ], + "url": "www.pizzahut.com", + "classifications": [ + { + "code": "RESTAURANT", + "names": [ + { + "nameLocale": "en-US", + "name": "pizza" + }, + { + "nameLocale": "en-US", + "name": "restaurant" + } + ] + } + ] + }, + "address": { + "streetNumber": "2560", + "streetName": "152nd Ave NE", + "municipalitySubdivision": "Redmond", + "municipality": "Redmond", + "countrySecondarySubdivision": "King", + "countryTertiarySubdivision": "Seattle East", + "countrySubdivision": "WA", + "postalCode": "98052", + "extendedPostalCode": "9805207", + "countryCode": "US", + "country": "United States", + "countryCodeISO3": "USA", + "freeformAddress": "2560 152nd Ave NE, Redmond, WA 98052", + "localName": "Redmond", + "countrySubdivisionName": "Washington" + }, + "position": { + "lat": 47.63255, + "lon": -122.137 + }, + "viewport": { + "topLeftPoint": { + "lat": 47.63345, + "lon": -122.13833 + }, + "btmRightPoint": { + "lat": 47.63165, + "lon": -122.13567 + } + }, + "entryPoints": [ + { + "type": "main", + "position": { + "lat": 47.63255, + "lon": -122.1377 + } + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/search.json b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/search.json new file mode 100644 index 000000000000..8546751c3d02 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Search/preview/1.0/search.json @@ -0,0 +1,3580 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Search Service", + "version": "1.0", + "description": "Azure Maps Search REST APIs" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "202": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + }, + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "202Async": { + "description": "**Supported only for async request.**\nRequest Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "TextFormat": { + "name": "format", + "description": "Desired format of the response. Value can be either _json_ or _xml_.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json", + "xml" + ], + "x-ms-enum": { + "name": "TextFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + }, + { + "value": "xml", + "description": "[The Extensible Markup Language](https://www.w3.org/TR/xml/)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "LimitSearch": { + "name": "limit", + "in": "query", + "description": "Maximum number of responses that will be returned. Default: 10, minimum: 1 and maximum: 100", + "required": false, + "type": "integer", + "default": 10, + "minimum": 1, + "maximum": 100, + "x-ms-parameter-location": "method" + }, + "Offset": { + "name": "ofs", + "in": "query", + "description": "Starting offset of the returned results within the full result set. Default: 0, minimum: 0 and maximum: 1900", + "required": false, + "type": "integer", + "default": 0, + "minimum": 0, + "maximum": 1900, + "x-ms-parameter-location": "method" + }, + "OptionalBiasLat": { + "name": "lat", + "in": "query", + "description": "Latitude where results should be biased. E.g. 37.337", + "required": false, + "type": "number", + "x-ms-parameter-location": "method" + }, + "OptionalBiasLon": { + "name": "lon", + "in": "query", + "description": "Longitude where results should be biased. E.g. -121.89", + "required": false, + "type": "number", + "x-ms-parameter-location": "method" + }, + "BoundingBoxTopLeft": { + "x-client-name": "BoundingBoxTopLeft", + "name": "topLeft", + "in": "query", + "description": "Top left position of the bounding box. E.g. 37.553,-122.453", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BoundingBoxBottomRight": { + "x-client-name": "BoundingBoxBottomRight", + "name": "btmRight", + "in": "query", + "description": "Bottom right position of the bounding box. E.g. 37.553,-122.453", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "RequiredBiasLat": { + "name": "lat", + "in": "query", + "description": "Latitude where results should be biased. E.g. 37.337.", + "required": true, + "type": "number", + "x-ms-parameter-location": "method" + }, + "RequiredBiasLon": { + "name": "lon", + "in": "query", + "description": "Longitude where results should be biased. E.g. -121.89.", + "required": true, + "type": "number", + "x-ms-parameter-location": "method" + }, + "Language": { + "name": "language", + "in": "query", + "description": "Language in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used.\n\nPlease refer to [Supported Languages](https://docs.microsoft.com/en-us/azure/azure-maps/supported-languages) for details.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Query": { + "name": "query", + "in": "query", + "description": "The applicable query string. Must be properly URL encoded.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Position": { + "name": "query", + "in": "query", + "description": "The applicable query specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "View": { + "name": "view", + "in": "query", + "description": "The View parameter specifies which set of geopolitically disputed content is returned via Azure Maps services, including borders and labels displayed on the map. The View parameter (also referred to as “user region parameter”) will show the correct maps for that country/region. By default, the View parameter is set to “Unified” even if you haven’t defined it in the request. It is your responsibility to determine the location of your users, and then set the View parameter correctly for that location. Alternatively, you have the option to set ‘View=Auto’, which will return the map data based on the IP address of the request. The View parameter in Azure Maps must be used in compliance with applicable laws, including those regarding mapping, of the country where maps, images and other data and third party content that you are authorized to access via Azure Maps is made available. Example: view=IN.\n\nPlease refer to [Supported Views](https://aka.ms/AzureMapsLocalizationViews) for details and to see the available Views.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SearchIndexSet": { + "name": "idxSet", + "in": "query", + "description": "A comma separated list of indexes which should be utilized for the search. Item order does not matter. Available indexes are: Addr = Address range interpolation, Geo = Geographies, PAD = Point Addresses, POI = Points of interest, Str = Streets, Xstr = Cross Streets (intersections)", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "Addr", + "Geo", + "PAD", + "POI", + "Str", + "Xstr" + ], + "x-ms-enum": { + "name": "SearchIndexSet", + "modelAsString": false, + "values": [ + { + "value": "Addr", + "description": "Address range interpolation" + }, + { + "value": "Geo", + "description": "Geographies" + }, + { + "value": "PAD", + "description": "Point Addresses" + }, + { + "value": "POI", + "description": "Points of interest" + }, + { + "value": "Str", + "description": "Streets" + }, + { + "value": "Xstr", + "description": "Cross Streets (Intersections)" + } + ] + } + }, + "collectionFormat": "csv", + "x-ms-parameter-location": "method" + }, + "ExtendedPostalCodesFor": { + "name": "extendedPostalCodesFor", + "in": "query", + "description": "Indexes for which extended postal codes should be included in the results.\n\nAvailable indexes are: \n\n **Addr** = Address ranges \n\n **Geo** = Geographies \n\n **PAD** = Point Addresses \n\n **POI** = Points of Interest \n\n **Str** = Streets \n\n **XStr** = Cross Streets (intersections)\n\nValue should be a comma separated list of index types (in any order) or **None** for no indexes.\n\nBy default extended postal codes are included for all indexes except Geo. Extended postal code lists for geographies can be quite long so they have to be explicitly requested when needed.\n\nUsage examples:\n\n extendedPostalCodesFor=POI \n\n extendedPostalCodesFor=PAD,Addr,POI \n\n extendedPostalCodesFor=None\n\nExtended postal code is returned as an **extendedPostalCode** property of an address. Availability is region-dependent.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ExtendedPostalCodesForPoi": { + "name": "extendedPostalCodesFor", + "in": "query", + "description": "Indexes for which extended postal codes should be included in the results.\n\nAvailable indexes are: \n\n **POI** = Points of Interest \n\nValue should be **POI** or **None** to disable extended postal codes.\n\nBy default extended postal codes are included.\n\nUsage examples:\n\n extendedPostalCodesFor=POI \n\n extendedPostalCodesFor=None\n\nExtended postal code is returned as an **extendedPostalCode** property of an address. Availability is region-dependent.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Typeahead": { + "name": "typeahead", + "in": "query", + "description": "Boolean. If the typeahead flag is set, the query will be interpreted as a partial input and the search will enter predictive mode", + "required": false, + "type": "boolean", + "default": false, + "x-ms-parameter-location": "method" + }, + "CategorySet": { + "name": "categorySet", + "in": "query", + "description": "A comma-separated list of category set IDs which could be used to restrict the result to specific Points of Interest categories. ID order does not matter. When multiple category identifiers are provided, only POIs that belong to (at least) one of the categories from the provided list will be returned. The list of supported categories can be discovered using  [POI Categories API](https://aka.ms/AzureMapsPOICategoryTree). Usage examples: \n\n* **categorySet=7315** (Search Points of Interest from category Restaurant)\n\n* **categorySet=7315025,7315017** (Search Points of Interest of category either Italian or French Restaurant) ", + "required": false, + "type": "array", + "items": { + "type": "integer" + }, + "collectionFormat": "csv", + "x-ms-parameter-location": "method" + }, + "CountrySet": { + "name": "countrySet", + "in": "query", + "description": "Comma separated string of country codes, e.g. FR,ES. This will limit the search to the specified countries", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-parameter-location": "method" + }, + "Radius": { + "name": "radius", + "in": "query", + "description": "The radius in meters to for the results to be constrained to the defined area", + "required": false, + "type": "number", + "x-ms-parameter-location": "method" + }, + "PoiQuery": { + "name": "query", + "in": "query", + "description": "The POI name to search for (e.g., \"statue of liberty\", \"starbucks\", \"pizza\"). Must be properly URL encoded.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BrandSet": { + "name": "brandSet", + "in": "query", + "description": "A comma-separated list of brand names which could be used to restrict the result to specific brands. Item order does not matter. When multiple brands are provided, only results that belong to (at least) one of the provided list will be returned. Brands that contain a \",\" in their name should be put into quotes.\n\nUsage examples:\n\n brandSet=Foo\n\n brandSet=Foo,Bar\n\n brandSet=\"A,B,C Comma\",Bar", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-parameter-location": "method" + }, + "ConnectorSet": { + "name": "connectorSet", + "in": "query", + "description": "A comma-separated list of connector types which could be used to restrict the result to Electric Vehicle Station supporting specific connector types. Item order does not matter. When multiple connector types are provided, only results that belong to (at least) one of the provided list will be returned.\n\nAvailable connector types are:\n * `StandardHouseholdCountrySpecific` - These are the standard household connectors for a certain region. They are all AC single phase and the standard Voltage and standard Amperage. See also: [Plug & socket types - World Standards](https://www.worldstandards.eu/electricity/plugs-and-sockets).\n * `IEC62196Type1` - Type 1 connector as defined in the IEC 62196-2 standard. Also called Yazaki after the original manufacturer or SAE J1772 after the standard that first published it. Mostly used in combination with 120V single phase or up to 240V single phase infrastructure.\n * `IEC62196Type1CCS` - Type 1 based combo connector as defined in the IEC 62196-3 standard. The connector is based on the Type 1 connector – as defined in the IEC 62196-2 standard – with two additional direct current (DC) contacts to allow DC fast charging.\n * `IEC62196Type2CableAttached` - Type 2 connector as defined in the IEC 62196-2 standard. Provided as a cable and plug attached to the charging point.\n * `IEC62196Type2Outlet` - Type 2 connector as defined in the IEC 62196-2 standard. Provided as a socket set into the charging point.\n * `IEC62196Type2CCS` - Type 2 based combo connector as defined in the IEC 62196-3 standard. The connector is based on the Type 2 connector – as defined in the IEC 62196-2 standard – with two additional direct current (DC) contacts to allow DC fast charging.\n * `IEC62196Type3` - Type 3 connector as defined in the IEC 62196-2 standard. Also called Scame after the original manufacturer. Mostly used in combination with up to 240V single phase or up to 420V three phase infrastructure.\n * `Chademo` - CHAdeMO connector named after an association formed by the Tokyo Electric Power Company and industrial partners. Because of this is is also known as the TEPCO's connector. It supports fast DC charging.\n * `IEC60309AC1PhaseBlue` - Industrial Blue connector is a connector defined in the IEC 60309 standard. It is sometime referred to as by some combination of the standard, the color and the fact that is a single phase connector. The connector usually has the \"P+N+E, 6h\" configuration.\n * `IEC60309DCWhite` - Industrial White connector is a DC connector defined in the IEC 60309 standard.\n * `Tesla` - The Tesla connector is the regionally specific Tesla Supercharger connector. I.e. it refers to either Tesla's proprietary connector, sometimes referred to as Tesla Port mostly limited to North America or the modified Type 2 (DC over Type 2) in Europe.\n\nUsage examples:\n\n connectorSet=IEC62196Type2CableAttached\n connectorSet=IEC62196Type2Outlet,IEC62196Type2CableAttached", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "StandardHouseholdCountrySpecific", + "IEC62196Type1", + "IEC62196Type1CCS", + "IEC62196Type2CableAttached", + "IEC62196Type2Outlet", + "IEC62196Type2CCS", + "IEC62196Type3", + "Chademo", + "IEC60309AC1PhaseBlue", + "IEC60309DCWhite", + "Tesla" + ], + "x-ms-enum": { + "name": "ConnectorSet", + "modelAsString": false, + "values": [ + { + "value": "StandardHouseholdCountrySpecific", + "description": "These are the standard household connectors for a certain region. They are all AC single phase and the standard Voltage and standard Amperage.\n\nSee also: [Plug & socket types - World Standards](https://www.worldstandards.eu/electricity/plugs-and-sockets)" + }, + { + "value": "IEC62196Type1", + "description": "Type 1 connector as defined in the IEC 62196-2 standard. Also called Yazaki after the original manufacturer or SAE J1772 after the standard that first published it. Mostly used in combination with 120V single phase or up to 240V single phase infrastructure." + }, + { + "value": "IEC62196Type1CCS", + "description": "Type 1 based combo connector as defined in the IEC 62196-3 standard. The connector is based on the Type 1 connector – as defined in the IEC 62196-2 standard – with two additional direct current (DC) contacts to allow DC fast charging." + }, + { + "value": "IEC62196Type2CableAttached", + "description": "Type 2 connector as defined in the IEC 62196-2 standard. Provided as a cable and plug attached to the charging point" + }, + { + "value": "IEC62196Type2Outlet", + "description": "Type 2 connector as defined in the IEC 62196-2 standard. Provided as a socket set into the charging point." + }, + { + "value": "IEC62196Type2CCS", + "description": "Type 2 based combo connector as defined in the IEC 62196-3 standard. The connector is based on the Type 2 connector – as defined in the IEC 62196-2 standard – with two additional direct current (DC) contacts to allow DC fast charging." + }, + { + "value": "IEC62196Type3", + "description": "Type 3 connector as defined in the IEC 62196-2 standard. Also called Scame after the original manufacturer. Mostly used in combination with up to 240V single phase or up to 420V three phase infrastructure." + }, + { + "value": "Chademo", + "description": "CHAdeMO connector named after an association formed by the Tokyo Electric Power Company and industrial partners. Because of this is is also known as the TEPCO's connector. It supports fast DC charging." + }, + { + "value": "IEC60309AC1PhaseBlue", + "description": "Industrial Blue connector is a connector defined in the IEC 60309 standard. It is sometime referred to as by some combination of the standard, the color and the fact that is a single phase connector. The connector usually has the \"P+N+E, 6h\" configuration." + }, + { + "value": "IEC60309DCWhite", + "description": "Industrial White connector is a DC connector defined in the IEC 60309 standard." + }, + { + "value": "Tesla", + "description": "The Tesla connector is the regionally specific Tesla Supercharger connector. I.e. it refers to either Tesla's proprietary connector, sometimes referred to as Tesla Port mostly limited to North America or the modified Type 2 (DC over Type 2) in Europe." + } + ] + } + }, + "collectionFormat": "csv", + "x-ms-parameter-location": "method" + }, + "OpeningHours": { + "name": "openingHours", + "description": "Hours of operation for a POI (Points of Interest). The availability of hours of operation will vary based on the data available.\nSupported value: nextSevenDays", + "type": "string", + "in": "query", + "required": false, + "enum": [ + "nextSevenDays" + ], + "x-ms-enum": { + "name": "OpeningHours", + "modelAsString": false, + "values": [ + { + "value": "nextSevenDays", + "description": "Shows the hours of operation for the next week, starting with the current day in the local time of the POI." + } + ] + }, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/search/polygon/{format}": { + "get": { + "x-publish": true, + "description": "**Get Polygon**\n\n\n**Applies to**: S1 pricing tier.\n\n\nThe Get Polygon service allows you to request the geometry data such as a city or country outline for a set of entities, previously retrieved from an Online Search request in GeoJSON format. The geometry ID is returned in the dataSources object under \"geometry\" and \"id\" in either a Search Address or Search Fuzzy call.\n\nPlease note that any geometry ID retrieved from an Online Search endpoint has a limited lifetime. The client should not store geometry IDs in persistent storage for later referral, as the stability of these identifiers is not guaranteed for a long period of time. It is expected that a request to the Polygon method is made within a few minutes of the request to the Online Search method that provided the ID. The service allows for batch requests up to 20 identifiers.", + "operationId": "Search_GetSearchPolygon", + "x-ms-examples": { + "Get the Geometry using the geometry id returned by the previous Search": { + "$ref": "./examples/GetSearchPolygon.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "geometries", + "in": "query", + "description": "Comma separated list of geometry UUIDs, previously retrieved from an Online Search request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchPolygonResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/search/fuzzy/{format}": { + "get": { + "x-publish": true, + "description": "\n**Free Form Search**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThe basic default API is Free Form Search which handles the most fuzzy of inputs handling any combination of address or POI tokens. This search API is the canonical 'single line search'. The Free Form Search API is a seamless combination of POI search and geocoding. The API can also be weighted with a contextual position (lat./lon. pair), or fully constrained by a coordinate and radius, or it can be executed more generally without any geo biasing anchor point.

We strongly advise you to use the 'countrySet' parameter to specify only the countries for which your application needs coverage, as the default behavior will be to search the entire world, potentially returning unnecessary results.

E.g.: `countrySet`=US,FR

Please see [Search Coverage](https://docs.microsoft.com/azure/location-based-services/geocoding-coverage) for a complete list of all the supported countries.

Most Search queries default to `maxFuzzyLevel`=2 to gain performance and also reduce unusual results. This new default can be overridden as needed per request by passing in the query param `maxFuzzyLevel`=3 or 4.", + "operationId": "Search_GetSearchFuzzy", + "x-ms-examples": { + "Search City Seattle": { + "$ref": "./examples/GetSearchFuzzy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "query", + "in": "query", + "description": "The applicable query string (e.g., \"seattle\", \"pizza\"). Can _also_ be specified as a comma separated string composed by latitude followed by longitude (e.g., \"47.641268, -122.125679\"). Must be properly URL encoded.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "$ref": "#/parameters/Typeahead" + }, + { + "$ref": "#/parameters/LimitSearch" + }, + { + "$ref": "#/parameters/Offset" + }, + { + "$ref": "#/parameters/CategorySet" + }, + { + "$ref": "#/parameters/CountrySet" + }, + { + "$ref": "#/parameters/OptionalBiasLat" + }, + { + "$ref": "#/parameters/OptionalBiasLon" + }, + { + "$ref": "#/parameters/Radius" + }, + { + "$ref": "#/parameters/BoundingBoxTopLeft" + }, + { + "$ref": "#/parameters/BoundingBoxBottomRight" + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/ExtendedPostalCodesFor" + }, + { + "name": "minFuzzyLevel", + "in": "query", + "description": "Minimum fuzziness level to be used. Default: 1, minimum: 1 and maximum: 4\n\n* Level 1 has no spell checking.\n\n* Level 2 uses normal n-gram spell checking. For example, query \"restrant\" can be matched to \"restaurant.\"\n\n* Level 3 uses sound-like spell checking, and shingle spell checking. Sound-like spell checking is for \"rstrnt\" to \"restaurant\" matching. Shingle spell checking is for \"mountainview\" to \"mountain view\" matching.\n\n* Level 4 doesn’t add any more spell checking functions.\n\n\n\nThe search engine will start looking for a match on the level defined by minFuzzyLevel, and will stop searching at the level specified by maxFuzzyLevel.", + "required": false, + "type": "integer", + "default": 1, + "minimum": 1, + "maximum": 4 + }, + { + "name": "maxFuzzyLevel", + "in": "query", + "description": "Maximum fuzziness level to be used. Default: 2, minimum: 1 and maximum: 4\n\n* Level 1 has no spell checking.\n\n* Level 2 uses normal n-gram spell checking. For example, query \"restrant\" can be matched to \"restaurant.\"\n\n* Level 3 uses sound-like spell checking, and shingle spell checking. Sound-like spell checking is for \"rstrnt\" to \"restaurant\" matching. Shingle spell checking is for \"mountainview\" to \"mountain view\" matching.\n\n* Level 4 doesn’t add any more spell checking functions.\n\n\n\nThe search engine will start looking for a match on the level defined by minFuzzyLevel, and will stop searching at the level specified by maxFuzzyLevel.", + "required": false, + "type": "integer", + "default": 2, + "minimum": 1, + "maximum": 4 + }, + { + "$ref": "#/parameters/SearchIndexSet" + }, + { + "$ref": "#/parameters/BrandSet" + }, + { + "$ref": "#/parameters/ConnectorSet" + }, + { + "$ref": "#/parameters/View" + }, + { + "$ref": "#/parameters/OpeningHours" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchFuzzyResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/poi/{format}": { + "get": { + "x-publish": true, + "description": "**Get POI by Name**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nPoints of Interest (POI) Search allows you to request POI results by name. Search supports additional query parameters such as language and filtering results by area of interest driven by country or bounding box. Endpoint will return only POI results matching the query string. Response includes POI details such as address, coordinate location and category.", + "operationId": "Search_GetSearchPOI", + "x-ms-examples": { + "Search for juice bars within 5 miles of Seattle Downtown and limit the response to 5 results": { + "$ref": "./examples/GetSearchPOI.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "query", + "in": "query", + "description": "The POI name to search for (e.g., \"statue of liberty\", \"starbucks\"), must be properly URL encoded.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "$ref": "#/parameters/Typeahead" + }, + { + "$ref": "#/parameters/LimitSearch" + }, + { + "$ref": "#/parameters/Offset" + }, + { + "$ref": "#/parameters/CategorySet" + }, + { + "$ref": "#/parameters/CountrySet" + }, + { + "$ref": "#/parameters/OptionalBiasLat" + }, + { + "$ref": "#/parameters/OptionalBiasLon" + }, + { + "$ref": "#/parameters/Radius" + }, + { + "$ref": "#/parameters/BoundingBoxTopLeft" + }, + { + "$ref": "#/parameters/BoundingBoxBottomRight" + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/ExtendedPostalCodesForPoi" + }, + { + "$ref": "#/parameters/BrandSet" + }, + { + "$ref": "#/parameters/ConnectorSet" + }, + { + "$ref": "#/parameters/View" + }, + { + "$ref": "#/parameters/OpeningHours" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchPoiResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/nearby/{format}": { + "get": { + "x-publish": true, + "description": "**Nearby Search**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nIf you have a use case for only retrieving POI results around a specific location, the nearby search method may be the right choice. This endpoint will only return POI results, and does not take in a search query parameter.", + "operationId": "Search_GetSearchNearby", + "x-ms-examples": { + "Search for any points of interest (POI) within 5 miles of Manhattan NY and return the top 10 results": { + "$ref": "./examples/GetSearchNearby.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "$ref": "#/parameters/RequiredBiasLat" + }, + { + "$ref": "#/parameters/RequiredBiasLon" + }, + { + "$ref": "#/parameters/LimitSearch" + }, + { + "$ref": "#/parameters/Offset" + }, + { + "$ref": "#/parameters/CategorySet" + }, + { + "$ref": "#/parameters/CountrySet" + }, + { + "name": "radius", + "in": "query", + "description": "The radius in meters to for the results to be constrained to the defined area, Min value is 1, Max Value is 50000.", + "required": false, + "type": "number" + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/ExtendedPostalCodesFor" + }, + { + "$ref": "#/parameters/BrandSet" + }, + { + "$ref": "#/parameters/ConnectorSet" + }, + { + "$ref": "#/parameters/View" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchNearbyResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/poi/category/{format}": { + "get": { + "x-publish": true, + "description": "**Get POI by Category**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nPoints of Interest (POI) Category Search allows you to request POI results from given category. Search allows to query POIs from one category at a time. Endpoint will only return POI results which are categorized as specified. Response includes POI details such as address, coordinate location and classification.", + "operationId": "Search_GetSearchPOICategory", + "x-ms-examples": { + "Search for atm's within 2 miles of Times Square NY and return the top 3 results": { + "$ref": "./examples/GetSearchPOICategory.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "query", + "in": "query", + "description": "The POI category to search for (e.g., \"AIRPORT\", \"RESTAURANT\"), must be properly URL encoded. Supported main categories can be requested by calling [Get Search POI Category Tree API](https://aka.ms/AzureMapsPOICategoryTree). List of available categories can also be found [here](https://docs.microsoft.com/azure/azure-maps/supported-search-categories). We recommend to use POI Search Category Tree API to request the supported categories.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "$ref": "#/parameters/Typeahead" + }, + { + "$ref": "#/parameters/LimitSearch" + }, + { + "$ref": "#/parameters/Offset" + }, + { + "$ref": "#/parameters/CategorySet" + }, + { + "$ref": "#/parameters/CountrySet" + }, + { + "$ref": "#/parameters/OptionalBiasLat" + }, + { + "$ref": "#/parameters/OptionalBiasLon" + }, + { + "$ref": "#/parameters/Radius" + }, + { + "$ref": "#/parameters/BoundingBoxTopLeft" + }, + { + "$ref": "#/parameters/BoundingBoxBottomRight" + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/ExtendedPostalCodesFor" + }, + { + "$ref": "#/parameters/BrandSet" + }, + { + "$ref": "#/parameters/ConnectorSet" + }, + { + "$ref": "#/parameters/View" + }, + { + "$ref": "#/parameters/OpeningHours" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchPoiCategoryResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/poi/category/tree/{format}": { + "get": { + "x-publish": true, + "description": "**Get POI Category Tree**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nPOI Category API provides a full list of supported Points of Interest (POI) categories and subcategories together with their translations and synonyms. The returned content can be used to provide more meaningful results through other Search Service APIs, like [Get Search POI](https://docs.microsoft.com/rest/api/maps/search/getsearchpoi).", + "operationId": "Search_GetSearchPOICategoryTreePreview", + "x-ms-examples": { + "Get the POI Category Tree (only partial response shown below)": { + "$ref": "./examples/GetPOICategoryTree.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "language", + "in": "query", + "description": "Language in which search results should be returned. Should be one of supported IETF language tags, except NGT and NGT-Latn. Language tag is case insensitive. When data in specified language is not available for a specific field, default language is used (English).\n\nPlease refer to [Supported Languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PoiCategoryResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/address/{format}": { + "get": { + "x-publish": true, + "description": "**Address Geocoding**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nIn many cases, the complete search service might be too much, for instance if you are only interested in traditional geocoding. Search can also be accessed for address look up exclusively. The geocoding is performed by hitting the geocode endpoint with just the address or partial address in question. The geocoding search index will be queried for everything above the street level data. No POIs will be returned. Note that the geocoder is very tolerant of typos and incomplete addresses. It will also handle everything from exact street addresses or street or intersections as well as higher level geographies such as city centers, counties, states etc.", + "operationId": "Search_GetSearchAddress", + "x-ms-examples": { + "Search detail address 15127 NE 24th Street, Redmond, WA 98052": { + "$ref": "./examples/GetSearchAddress.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "query", + "in": "query", + "description": "The address to search for (e.g., \"1 Microsoft way, Redmond, WA\"), must be properly URL encoded.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + { + "$ref": "#/parameters/Typeahead" + }, + { + "$ref": "#/parameters/LimitSearch" + }, + { + "$ref": "#/parameters/Offset" + }, + { + "$ref": "#/parameters/CountrySet" + }, + { + "$ref": "#/parameters/OptionalBiasLat" + }, + { + "$ref": "#/parameters/OptionalBiasLon" + }, + { + "$ref": "#/parameters/Radius" + }, + { + "$ref": "#/parameters/BoundingBoxTopLeft" + }, + { + "$ref": "#/parameters/BoundingBoxBottomRight" + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/ExtendedPostalCodesFor" + }, + { + "$ref": "#/parameters/View" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchAddressResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/address/reverse/{format}": { + "get": { + "x-publish": true, + "description": "**Reverse Geocode to an Address**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThere may be times when you need to translate a coordinate (example: 37.786505, -122.3862) into a human understandable street address. Most often this is needed in tracking applications where you receive a GPS feed from the device or asset and wish to know what address where the coordinate is located. This endpoint will return address information for a given coordinate.", + "operationId": "Search_GetSearchAddressReverse", + "x-ms-examples": { + "GetSearchAddressReverse": { + "$ref": "./examples/GetSearchAddressReverse.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "$ref": "#/parameters/Position" + }, + { + "$ref": "#/parameters/Language" + }, + { + "name": "returnSpeedLimit", + "in": "query", + "description": "Boolean. To enable return of the posted speed limit", + "required": false, + "type": "boolean", + "default": false + }, + { + "name": "heading", + "in": "query", + "description": "The directional heading of the vehicle in degrees, for travel along a segment of roadway. 0 is North, 90 is East and so on, values range from -360 to 360. The precision can include upto one decimal place", + "required": false, + "type": "number", + "minimum": -360, + "maximum": 360 + }, + { + "$ref": "#/parameters/Radius" + }, + { + "name": "number", + "in": "query", + "description": "If a number is sent in along with the request, the response may include the side of the street (Left/Right) and also an offset position for that number", + "required": false, + "type": "string" + }, + { + "name": "returnRoadUse", + "in": "query", + "description": "Boolean. To enable return of the road use array for reverse geocodes at street level", + "required": false, + "type": "boolean", + "default": false + }, + { + "name": "roadUse", + "in": "query", + "description": "To restrict reverse geocodes to a certain type of road use. The road use array for reverse geocodes can be one or more of LimitedAccess, Arterial, Terminal, Ramp, Rotary, LocalStreet", + "required": false, + "type": "string" + }, + { + "name": "allowFreeformNewline", + "in": "query", + "description": "Format of newlines in the formatted address.\n\nIf true, the address will contain newlines.\nIf false, newlines will be converted to commas.", + "required": false, + "type": "boolean" + }, + { + "name": "returnMatchType", + "in": "query", + "description": "Include information on the type of match the geocoder achieved in the response.", + "required": false, + "type": "boolean" + }, + { + "name": "entityType", + "in": "query", + "description": "Specifies the level of filtering performed on geographies. Narrows the search for specified geography entity types, e.g. return only municipality. The resulting response will contain the geography ID as well as the entity type matched. If you provide more than one entity as a comma separated list, endpoint will return the 'smallest entity available'. Returned Geometry ID can be used to get the geometry of that geography via [Get Search Polygon](https://docs.microsoft.com/rest/api/maps/search/getsearchpolygon) API. The following parameters are ignored when entityType is set:\n\n* heading\n* number\n* returnRoadUse\n* returnSpeedLimit\n* roadUse\n* returnMatchType", + "required": false, + "type": "string", + "enum": [ + "Country", + "CountrySubdivision", + "CountrySecondarySubdivision", + "CountryTertiarySubdivision", + "Municipality", + "MunicipalitySubdivision", + "Neighbourhood", + "PostalCodeArea" + ], + "x-ms-enum": { + "name": "EntityType", + "modelAsString": false, + "values": [ + { + "value": "Country", + "description": "Country name" + }, + { + "value": "CountrySubdivision", + "description": "State or Province" + }, + { + "value": "CountrySecondarySubdivision", + "description": "County" + }, + { + "value": "CountryTertiarySubdivision", + "description": "Named Area" + }, + { + "value": "Municipality", + "description": "City / Town" + }, + { + "value": "MunicipalitySubdivision", + "description": "Sub / Super City" + }, + { + "value": "Neighbourhood", + "description": "Neighbourhood" + }, + { + "value": "PostalCodeArea", + "description": "Postal Code / Zip Code" + } + ] + }, + "x-ms-parameter-location": "method" + }, + { + "$ref": "#/parameters/View" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchAddressReverseResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/address/reverse/crossStreet/{format}": { + "get": { + "x-publish": true, + "description": "**Reverse Geocode to a Cross Street**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThere may be times when you need to translate a coordinate (example: 37.786505, -122.3862) into a human understandable cross street. Most often this is needed in tracking applications where you receive a GPS feed from the device or asset and wish to know what address where the coordinate is located.\nThis endpoint will return cross street information for a given coordinate.", + "operationId": "Search_GetSearchAddressReverseCrossStreet", + "x-ms-examples": { + "GetSearchAddressReverseCrossStreet": { + "$ref": "./examples/GetSearchAddressReverseCrossStreet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "$ref": "#/parameters/Position" + }, + { + "$ref": "#/parameters/LimitSearch" + }, + { + "name": "heading", + "in": "query", + "description": "The directional heading of the vehicle in degrees, for travel along a segment of roadway. 0 is North, 90 is East and so on, values range from -360 to 360. The precision can include upto one decimal place", + "required": false, + "type": "number", + "minimum": -360, + "maximum": 360 + }, + { + "$ref": "#/parameters/Radius" + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/View" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchAddressReverseCrossStreetResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/address/structured/{format}": { + "get": { + "x-publish": true, + "description": "**Structured Address Geocoding**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nAzure Address Geocoding can also be accessed for structured address look up exclusively. The geocoding search index will be queried for everything above the street level data. No POIs will be returned. Note that the geocoder is very tolerant of typos and incomplete addresses. It will also handle everything from exact street addresses or street or intersections as well as higher level geographies such as city centers, counties, states etc.", + "operationId": "Search_GetSearchAddressStructured", + "x-ms-examples": { + "GetSearchAddressStructured": { + "$ref": "./examples/GetSearchAddressStructured.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "$ref": "#/parameters/Language" + }, + { + "name": "countryCode", + "in": "query", + "description": "The 2 or 3 letter [ISO3166-1](https://www.iso.org/iso-3166-country-codes.html) country code portion of an address. E.g. US.", + "required": true, + "default": "US", + "type": "string" + }, + { + "$ref": "#/parameters/LimitSearch" + }, + { + "$ref": "#/parameters/Offset" + }, + { + "name": "streetNumber", + "in": "query", + "description": "The street number portion of an address", + "required": false, + "type": "string" + }, + { + "name": "streetName", + "in": "query", + "description": "The street name portion of an address", + "required": false, + "type": "string" + }, + { + "name": "crossStreet", + "in": "query", + "description": "The cross street name for the structured address", + "required": false, + "type": "string" + }, + { + "name": "municipality", + "in": "query", + "description": "The municipality portion of an address", + "required": false, + "type": "string" + }, + { + "name": "municipalitySubdivision", + "in": "query", + "description": "The municipality subdivision (sub/super city) for the structured address", + "required": false, + "type": "string" + }, + { + "name": "countryTertiarySubdivision", + "in": "query", + "description": "The named area for the structured address", + "required": false, + "type": "string" + }, + { + "name": "countrySecondarySubdivision", + "in": "query", + "description": "The county for the structured address", + "required": false, + "type": "string" + }, + { + "name": "countrySubdivision", + "in": "query", + "description": "The country subdivision portion of an address", + "required": false, + "type": "string" + }, + { + "name": "postalCode", + "in": "query", + "description": "The postal code portion of an address", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ExtendedPostalCodesFor" + }, + { + "$ref": "#/parameters/View" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchAddressStructuredResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/geometry/{format}": { + "post": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\nThe Search Geometry endpoint allows you to perform a free form search inside a single geometry or many of them. The search results that fall inside the geometry/geometries will be returned.

To send the geometry you will use a `POST` request where the request body will contain the `geometry` object represented as a `GeoJSON` type and the `Content-Type` header will be set to `application/json`. The geographical features to be searched can be modeled as Polygon and/or Circle geometries represented using any one of the following `GeoJSON` types:
  • **GeoJSON FeatureCollection**
    The `geometry` can be represented as a `GeoJSON FeatureCollection` object. This is the recommended option if the geometry contains both Polygons and Circles. The `FeatureCollection` can contain a max of 50 `GeoJSON Feature` objects. Each `Feature` object should represent either a Polygon or a Circle with the following conditions:
    • A `Feature` object for the Polygon geometry can have a max of 50 coordinates and it's properties must be empty.
    • A `Feature` object for the Circle geometry is composed of a _center_ represented using a `GeoJSON Point` type and a _radius_ value (in meters) which must be specified in the object's properties along with the _subType_ property whose value should be 'Circle'.

    Please see the Examples section below for a sample `FeatureCollection` representation.

  • **GeoJSON GeometryCollection**
    The `geometry` can be represented as a `GeoJSON GeometryCollection` object. This is the recommended option if the geometry contains a list of Polygons only. The `GeometryCollection` can contain a max of 50 `GeoJSON Polygon` objects. Each `Polygon` object can have a max of 50 coordinates. Please see the Examples section below for a sample `GeometryCollection` representation.

  • **GeoJSON Polygon**
    The `geometry` can be represented as a `GeoJSON Polygon` object. This is the recommended option if the geometry contains a single Polygon. The `Polygon` object can have a max of 50 coordinates. Please see the Examples section below for a sample `Polygon` representation.

.

", + "operationId": "Search_PostSearchInsideGeometry", + "x-ms-examples": { + "Search for pizza places inside a geometry represented as a GeoJSON FeatureCollection type": { + "$ref": "./examples/PostSearchInsideFeatureCollection.json" + }, + "Search for burger joints inside a geometry represented as a GeoJSON GeometryCollection type": { + "$ref": "./examples/PostSearchInsideGeometryCollection.json" + }, + "Search for subs joints inside a geometry represented as a GeoJSON Polygon type": { + "$ref": "./examples/PostSearchInsideGeometry.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/PoiQuery" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "$ref": "#/parameters/LimitSearch" + }, + { + "$ref": "#/parameters/Language" + }, + { + "$ref": "#/parameters/CategorySet" + }, + { + "$ref": "#/parameters/ExtendedPostalCodesFor" + }, + { + "$ref": "#/parameters/SearchIndexSet" + }, + { + "name": "searchInsideGeometryRequestBody", + "in": "body", + "description": "This represents the geometry for one or more geographical features (parks, state boundary etc.) to search in and should be a GeoJSON compliant type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946) for details.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchInsideGeometryRequestBody" + } + }, + { + "$ref": "#/parameters/View" + }, + { + "$ref": "#/parameters/OpeningHours" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchGeometryResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/alongRoute/{format}": { + "post": { + "x-publish": true, + "description": "**Applies to**: S0 and S1 pricing tiers.\n\n\nThe Search Along Route endpoint allows you to perform a fuzzy search for POIs along a specified route. This search is constrained by specifying the `maxDetourTime` limiting measure.

To send the route-points you will use a `POST` request where the request body will contain the `route` object represented as a `GeoJSON LineString` type and the `Content-Type` header will be set to `application/json`. Each route-point in `route` is represented as a `GeoJSON Position` type i.e. an array where the _longitude_ value is followed by the _latitude_ value and the _altitude_ value is ignored. The `route` should contain at least 2 route-points.

It is possible that original route will be altered, some of it's points may be skipped. If the route that passes through the found point is faster than the original one, the `detourTime` value in the response is negative.", + "operationId": "Search_PostSearchAlongRoute", + "x-ms-examples": { + "Search for burger joints along a route": { + "$ref": "./examples/PostSearchAlongRoute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/CategorySet" + }, + { + "$ref": "#/parameters/PoiQuery" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "maxDetourTime", + "description": "Maximum detour time of the point of interest in seconds. Max value is 3600 seconds", + "required": true, + "type": "integer", + "in": "query", + "maximum": 3600 + }, + { + "name": "limit", + "description": "Maximum number of responses that will be returned. Default value is 10. Max value is 20", + "required": false, + "type": "integer", + "in": "query", + "default": 10, + "maximum": 20 + }, + { + "$ref": "#/parameters/BrandSet" + }, + { + "$ref": "#/parameters/ConnectorSet" + }, + { + "$ref": "#/parameters/View" + }, + { + "$ref": "#/parameters/OpeningHours" + }, + { + "name": "searchAlongRouteRequestBody", + "in": "body", + "description": "This represents the route to search along and should be a valid `GeoJSON LineString` type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.4) for details.", + "required": true, + "schema": { + "$ref": "#/definitions/SearchAlongRouteRequestBody" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SearchAlongRouteResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/search/fuzzy/batch/{format}": { + "post": { + "x-publish": true, + "description": "**Search Fuzzy Batch API**\n\n\n**Applies to**: S1 pricing tier.\n\n\n\nThe Search Address Batch API sends batches of queries to [Search Fuzzy API](https://docs.microsoft.com/en-us/rest/api/maps/search/getsearchfuzzy) using just a single API call. You can call Search Address Fuzzy Batch API to run either asynchronously (async) or synchronously (sync). The async API allows caller to batch up to **10,000** queries and sync API up to **100** queries.\n### Submit Synchronous Batch Request\nThe Synchronous API is recommended for lightweight batch requests. When the service receives a request, it will respond as soon as the batch items are calculated and there will be no possibility to retrieve the results later. The Synchronous API will return a timeout error (a 408 response) if the request takes longer than 60 seconds. The number of batch items is limited to **100** for this API.\n```\nPOST https://atlas.microsoft.com/search/fuzzy/batch/sync/json?api-version=1.0&subscription-key={subscription-key}\n```\n### Submit Asynchronous Batch Request\nThe Asynchronous API is appropriate for processing big volumes of relatively complex search requests\n- It allows the retrieval of results in a separate call (multiple downloads are possible).\n- The asynchronous API is optimized for reliability and is not expected to run into a timeout.\n- The number of batch items is limited to **10,000** for this API.\n\nWhen you make a request by using async request, by default the service returns a 202 response code along a redirect URL in the Location field of the response header. This URL should be checked periodically until the response data or error information is available.\nThe asynchronous responses are stored for **14** days. The redirect URL returns a 404 response if used after the expiration period.\n\nPlease note that asynchronous batch request is a long-running request. Here's a typical sequence of operations:\n1. Client sends a Search Address Batch `POST` request to Azure Maps\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Batch request has been accepted.\n\n > HTTP `Error` - There was an error processing your Batch request. This could either be a `400 Bad Request` or any other `Error` status code.\n\n3. If the batch request was accepted successfully, the `Location` header in the response contains the URL to download the results of the batch request.\n This status URI looks like following:\n\n```\n GET https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}\n```\n4. Client issues a `GET` request on the _download URL_ obtained in Step 3 to download the batch results.\n\n### POST Body for Batch Request\nTo send the _search fuzzy_ queries you will use a `POST` request where the request body will contain the `batchItems` array in `json` format and the `Content-Type` header will be set to `application/json`. Here's a sample request body containing 5 _search fuzzy_ queries:\n\n\n```json\n{\n \"batchItems\": [\n {\"query\": \"?query=atm&lat=47.639769&lon=-122.128362&radius=5000&limit=5\"},\n {\"query\": \"?query=Statue Of Liberty&limit=2\"},\n {\"query\": \"?query=Starbucks&lat=47.639769&lon=-122.128362&radius=5000\"},\n {\"query\": \"?query=Space Needle\"},\n {\"query\": \"?query=pizza&limit=10\"}\n ]\n}\n```\n\nA _search fuzzy_ query in a batch is just a partial URL _without_ the protocol, base URL, path, api-version and subscription-key. It can accept any of the supported _search fuzzy_ [URI parameters](https://docs.microsoft.com/en-us/rest/api/maps/search/getsearchfuzzy#uri-parameters). The string values in the _search fuzzy_ query must be properly escaped (e.g. \" character should be escaped with \\\\ ) and it should also be properly URL-encoded.\n\n\nThe async API allows caller to batch up to **10,000** queries and sync API up to **100** queries, and the batch should contain at least **1** query.\n\n\n### Download Asynchronous Batch Results\nTo download the async batch results you will issue a `GET` request to the batch download endpoint. This _download URL_ can be obtained from the `Location` header of a successful `POST` batch request and looks like the following:\n\n```\nhttps://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}\n```\nHere's the typical sequence of operations for downloading the batch results:\n1. Client sends a `GET` request using the _download URL_.\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Batch request was accepted but is still being processed. Please try again in some time.\n\n > HTTP `200 OK` - Batch request successfully processed. The response body contains all the batch results.\n\n\n\n### Batch Response Model\nThe returned data content is similar for async and sync requests. When downloading the results of an async batch request, if the batch has finished processing, the response body contains the batch response. This batch response contains a `summary` component that indicates the `totalRequests` that were part of the original batch request and `successfulRequests`i.e. queries which were executed successfully. The batch response also includes a `batchItems` array which contains a response for each and every query in the batch request. The `batchItems` will contain the results in the exact same order the original queries were sent in the batch request. Each item in `batchItems` contains `statusCode` and `response` fields. Each `response` in `batchItems` is of one of the following types:\n\n - [`SearchFuzzyResponse`](https://docs.microsoft.com/en-us/rest/api/maps/search/getsearchfuzzy#searchfuzzyresponse) - If the query completed successfully.\n\n - `Error` - If the query failed. The response will contain a `code` and a `message` in this case.\n\n\nHere's a sample Batch Response with 2 _successful_ and 1 _failed_ result:\n\n\n```json\n{\n \"summary\": {\n \"successfulRequests\": 2,\n \"totalRequests\": 3\n },\n \"batchItems\": [\n {\n \"statusCode\": 200,\n \"response\":\n {\n \"summary\": {\n \"query\": \"atm\"\n },\n \"results\": [\n {\n \"type\": \"POI\",\n \"poi\": {\n \"name\": \"ATM at Wells Fargo\"\n },\n \"address\": {\n \"country\": \"United States Of America\",\n \"freeformAddress\": \"3240 157th Ave NE, Redmond, WA 98052\"\n }\n }\n ]\n }\n },\n {\n \"statusCode\": 200,\n \"response\":\n {\n \"summary\": {\n \"query\": \"statue of liberty\"\n },\n \"results\": [\n {\n \"type\": \"POI\",\n \"poi\": {\n \"name\": \"Statue of Liberty\"\n },\n \"address\": {\n \"country\": \"United States Of America\",\n \"freeformAddress\": \"New York, NY 10004\"\n }\n }\n ]\n }\n },\n {\n \"statusCode\": 400,\n \"response\":\n {\n \"error\":\n {\n \"code\": \"400 BadRequest\",\n \"message\": \"Bad request: one or more parameters were incorrectly specified or are mutually exclusive.\"\n }\n }\n }\n ]\n}\n```", + "operationId": "Search_PostSearchFuzzyBatch", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "A Search Fuzzy Batch API call containing 5 Search Fuzzy API queries": { + "$ref": "./examples/PostSearchFuzzyBatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "searchFuzzyBatchRequestBody", + "in": "body", + "description": "The list of search fuzzy queries/requests to process. The list can contain a max of 10,000 queries and must contain at least 1 query.", + "required": true, + "schema": { + "$ref": "#/definitions/BatchRequestBody" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BatchResponse" + } + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/search/address/batch/{format}": { + "post": { + "x-publish": true, + "description": "**Search Address Batch API**\n\n\n**Applies to**: S1 pricing tier.\n\n\n\nThe Search Address Batch API sends batches of queries to [Search Address API](https://docs.microsoft.com/en-us/rest/api/maps/search/getsearchaddress) using just a single API call. You can call Search Address Batch API to run either asynchronously (async) or synchronously (sync). The async API allows caller to batch up to **10,000** queries and sync API up to **100** queries.\n### Submit Synchronous Batch Request\nThe Synchronous API is recommended for lightweight batch requests. When the service receives a request, it will respond as soon as the batch items are calculated and there will be no possibility to retrieve the results later. The Synchronous API will return a timeout error (a 408 response) if the request takes longer than 60 seconds. The number of batch items is limited to **100** for this API.\n```\nPOST https://atlas.microsoft.com/search/address/batch/sync/json?api-version=1.0&subscription-key={subscription-key}\n```\n### Submit Asynchronous Batch Request\nThe Asynchronous API is appropriate for processing big volumes of relatively complex search requests\n- It allows the retrieval of results in a separate call (multiple downloads are possible).\n- The asynchronous API is optimized for reliability and is not expected to run into a timeout.\n- The number of batch items is limited to **10,000** for this API.\n\nWhen you make a request by using async request, by default the service returns a 202 response code along a redirect URL in the Location field of the response header. This URL should be checked periodically until the response data or error information is available.\nThe asynchronous responses are stored for **14** days. The redirect URL returns a 404 response if used after the expiration period.\n\nPlease note that asynchronous batch request is a long-running request. Here's a typical sequence of operations:\n1. Client sends a Search Address Batch `POST` request to Azure Maps\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Batch request has been accepted.\n\n > HTTP `Error` - There was an error processing your Batch request. This could either be a `400 Bad Request` or any other `Error` status code.\n\n3. If the batch request was accepted successfully, the `Location` header in the response contains the URL to download the results of the batch request.\n This status URI looks like following:\n\n```\n GET https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}\n```\n4. Client issues a `GET` request on the _download URL_ obtained in Step 3 to download the batch results.\n\n### POST Body for Batch Request\nTo send the _search address_ queries you will use a `POST` request where the request body will contain the `batchItems` array in `json` format and the `Content-Type` header will be set to `application/json`. Here's a sample request body containing 5 _search address_ queries:\n\n\n```json\n{\n \"batchItems\": [\n {\"query\": \"?query=400 Broad St, Seattle, WA 98109&limit=3\"},\n {\"query\": \"?query=One, Microsoft Way, Redmond, WA 98052&limit=3\"},\n {\"query\": \"?query=350 5th Ave, New York, NY 10118&limit=1\"},\n {\"query\": \"?query=Pike Pl, Seattle, WA 98101&lat=47.610970&lon=-122.342469&radius=1000\"},\n {\"query\": \"?query=Champ de Mars, 5 Avenue Anatole France, 75007 Paris, France&limit=1\"}\n ]\n}\n```\n\nA _search address_ query in a batch is just a partial URL _without_ the protocol, base URL, path, api-version and subscription-key. It can accept any of the supported _search address_ [URI parameters](https://docs.microsoft.com/en-us/rest/api/maps/search/getsearchaddress#uri-parameters). The string values in the _search address_ query must be properly escaped (e.g. \" character should be escaped with \\\\ ) and it should also be properly URL-encoded.\n\n\nThe async API allows caller to batch up to **10,000** queries and sync API up to **100** queries, and the batch should contain at least **1** query.\n\n\n### Download Asynchronous Batch Results\nTo download the async batch results you will issue a `GET` request to the batch download endpoint. This _download URL_ can be obtained from the `Location` header of a successful `POST` batch request and looks like the following:\n\n```\nhttps://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}\n```\nHere's the typical sequence of operations for downloading the batch results:\n1. Client sends a `GET` request using the _download URL_.\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Batch request was accepted but is still being processed. Please try again in some time.\n\n > HTTP `200 OK` - Batch request successfully processed. The response body contains all the batch results.\n\n\n\n### Batch Response Model\nThe returned data content is similar for async and sync requests. When downloading the results of an async batch request, if the batch has finished processing, the response body contains the batch response. This batch response contains a `summary` component that indicates the `totalRequests` that were part of the original batch request and `successfulRequests`i.e. queries which were executed successfully. The batch response also includes a `batchItems` array which contains a response for each and every query in the batch request. The `batchItems` will contain the results in the exact same order the original queries were sent in the batch request. Each item in `batchItems` contains `statusCode` and `response` fields. Each `response` in `batchItems` is of one of the following types:\n\n - [`SearchAddressResponse`](https://docs.microsoft.com/en-us/rest/api/maps/search/getsearchaddress#searchaddressresponse) - If the query completed successfully.\n\n - `Error` - If the query failed. The response will contain a `code` and a `message` in this case.\n\n\nHere's a sample Batch Response with 2 _successful_ and 1 _failed_ result:\n\n\n```json\n{\n \"summary\": {\n \"successfulRequests\": 2,\n \"totalRequests\": 3\n },\n \"batchItems\": [\n {\n \"statusCode\": 200,\n \"response\":\n {\n \"summary\": {\n \"query\": \"one microsoft way redmond wa 98052\"\n },\n \"results\": [\n {\n \"position\": {\n \"lat\": 47.63989,\n \"lon\": -122.12509\n }\n }\n ]\n }\n },\n {\n \"statusCode\": 200,\n \"response\":\n {\n \"summary\": {\n \"query\": \"pike pl seattle wa 98101\"\n },\n \"results\": [\n {\n \"position\": {\n \"lat\": 47.60963,\n \"lon\": -122.34215\n }\n }\n ]\n }\n },\n {\n \"statusCode\": 400,\n \"response\":\n {\n \"error\":\n {\n \"code\": \"400 BadRequest\",\n \"message\": \"Bad request: one or more parameters were incorrectly specified or are mutually exclusive.\"\n }\n }\n }\n ]\n}\n```", + "operationId": "Search_PostSearchAddressBatch", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "An Address Geocoding Batch API call containing 5 Address Geocoding API queries": { + "$ref": "./examples/PostSearchAddressBatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "searchAddressBatchRequestBody", + "in": "body", + "description": "The list of address geocoding queries/requests to process. The list can contain a max of 10,000 queries and must contain at least 1 query.", + "required": true, + "schema": { + "$ref": "#/definitions/BatchRequestBody" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BatchResponse" + } + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/search/address/reverse/batch/{format}": { + "post": { + "x-publish": true, + "description": "**Search Address Reverse Batch API**\n\n\n**Applies to**: S1 pricing tier.\n\n\n\nThe Search Address Batch API sends batches of queries to [Search Address Reverse API](https://docs.microsoft.com/en-us/rest/api/maps/search/getsearchaddressreverse) using just a single API call. You can call Search Address Reverse Batch API to run either asynchronously (async) or synchronously (sync). The async API allows caller to batch up to **10,000** queries and sync API up to **100** queries.\n### Submit Synchronous Batch Request\nThe Synchronous API is recommended for lightweight batch requests. When the service receives a request, it will respond as soon as the batch items are calculated and there will be no possibility to retrieve the results later. The Synchronous API will return a timeout error (a 408 response) if the request takes longer than 60 seconds. The number of batch items is limited to **100** for this API.\n```\nPOST https://atlas.microsoft.com/search/address/reverse/batch/sync/json?api-version=1.0&subscription-key={subscription-key}\n```\n### Submit Asynchronous Batch Request\nThe Asynchronous API is appropriate for processing big volumes of relatively complex search requests\n- It allows the retrieval of results in a separate call (multiple downloads are possible).\n- The asynchronous API is optimized for reliability and is not expected to run into a timeout.\n- The number of batch items is limited to **10,000** for this API.\n\nWhen you make a request by using async request, by default the service returns a 202 response code along a redirect URL in the Location field of the response header. This URL should be checked periodically until the response data or error information is available.\nThe asynchronous responses are stored for **14** days. The redirect URL returns a 404 response if used after the expiration period.\n\nPlease note that asynchronous batch request is a long-running request. Here's a typical sequence of operations:\n1. Client sends a Search Address Batch `POST` request to Azure Maps\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Batch request has been accepted.\n\n > HTTP `Error` - There was an error processing your Batch request. This could either be a `400 Bad Request` or any other `Error` status code.\n\n3. If the batch request was accepted successfully, the `Location` header in the response contains the URL to download the results of the batch request.\n This status URI looks like following:\n\n```\n GET https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}\n```\n4. Client issues a `GET` request on the _download URL_ obtained in Step 3 to download the batch results.\n\n### POST Body for Batch Request\nTo send the _search address reverse_ queries you will use a `POST` request where the request body will contain the `batchItems` array in `json` format and the `Content-Type` header will be set to `application/json`. Here's a sample request body containing 5 _search address reverse_ queries:\n\n\n```json\n{\n \"batchItems\": [\n {\"query\": \"?query=48.858561,2.294911\"},\n {\"query\": \"?query=47.639765,-122.127896&radius=5000&limit=2\"},\n {\"query\": \"?query=47.621028,-122.348170\"},\n {\"query\": \"?query=43.722990,10.396695\"},\n {\"query\": \"?query=40.750958,-73.982336\"}\n ]\n}\n```\n\nA _search address reverse_ query in a batch is just a partial URL _without_ the protocol, base URL, path, api-version and subscription-key. It can accept any of the supported _search address reverse_ [URI parameters](https://docs.microsoft.com/en-us/rest/api/maps/search/getsearchaddressreverse#uri-parameters). The string values in the _search address reverse_ query must be properly escaped (e.g. \" character should be escaped with \\\\ ) and it should also be properly URL-encoded.\n\n\nThe async API allows caller to batch up to **10,000** queries and sync API up to **100** queries, and the batch should contain at least **1** query.\n\n\n### Download Asynchronous Batch Results\nTo download the async batch results you will issue a `GET` request to the batch download endpoint. This _download URL_ can be obtained from the `Location` header of a successful `POST` batch request and looks like the following:\n\n```\nhttps://atlas.microsoft.com/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}\n```\nHere's the typical sequence of operations for downloading the batch results:\n1. Client sends a `GET` request using the _download URL_.\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Batch request was accepted but is still being processed. Please try again in some time.\n\n > HTTP `200 OK` - Batch request successfully processed. The response body contains all the batch results.\n\n\n\n### Batch Response Model\nThe returned data content is similar for async and sync requests. When downloading the results of an async batch request, if the batch has finished processing, the response body contains the batch response. This batch response contains a `summary` component that indicates the `totalRequests` that were part of the original batch request and `successfulRequests`i.e. queries which were executed successfully. The batch response also includes a `batchItems` array which contains a response for each and every query in the batch request. The `batchItems` will contain the results in the exact same order the original queries were sent in the batch request. Each item in `batchItems` contains `statusCode` and `response` fields. Each `response` in `batchItems` is of one of the following types:\n\n - [`SearchAddressReverseResponse`](https://docs.microsoft.com/en-us/rest/api/maps/search/getsearchaddressreverse#searchaddressreverseresponse) - If the query completed successfully.\n\n - `Error` - If the query failed. The response will contain a `code` and a `message` in this case.\n\n\nHere's a sample Batch Response with 2 _successful_ and 1 _failed_ result:\n\n\n```json\n{\n \"summary\": {\n \"successfulRequests\": 2,\n \"totalRequests\": 3\n },\n \"batchItems\": [\n {\n \"statusCode\": 200,\n \"response\":\n {\n \"summary\": {\n \"queryTime\": 11\n },\n \"addresses\": [\n {\n \"address\": {\n \"country\": \"France\",\n \"freeformAddress\": \"Avenue Anatole France, 75007 Paris\"\n },\n \"position\": \"48.858490,2.294820\"\n }\n ]\n }\n },\n {\n \"statusCode\": 200,\n \"response\":\n {\n \"summary\": {\n \"queryTime\": 1\n },\n \"addresses\": [\n {\n \"address\": {\n \"country\": \"United States of America\",\n \"freeformAddress\": \"157th Pl NE, Redmond WA 98052\"\n },\n \"position\": \"47.640470,-122.129430\"\n }\n ]\n }\n },\n {\n \"statusCode\": 400,\n \"response\":\n {\n \"error\":\n {\n \"code\": \"400 BadRequest\",\n \"message\": \"Bad request: one or more parameters were incorrectly specified or are mutually exclusive.\"\n }\n }\n }\n ]\n}\n```", + "operationId": "Search_PostSearchAddressReverseBatch", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "A Reverse Geocoding Batch API call containing 5 Reverse Geocoding API queries": { + "$ref": "./examples/PostSearchAddressReverseBatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "searchAddressReverseBatchRequestBody", + "in": "body", + "description": "The list of reverse geocoding queries/requests to process. The list can contain a max of 10,000 queries and must contain at least 1 query.", + "required": true, + "schema": { + "$ref": "#/definitions/BatchRequestBody" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BatchResponse" + } + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "BatchResponse": { + "description": "This object is returned from a successful Batch service call", + "type": "object", + "properties": { + "summary": { + "description": "Summary for the batch request", + "type": "object", + "readOnly": true, + "properties": { + "successfulRequests": { + "description": "Number of successful requests in the batch", + "type": "integer", + "readOnly": true + }, + "totalRequests": { + "description": "Total number of requests in the batch", + "type": "integer", + "readOnly": true + } + } + }, + "batchItems": { + "description": "Array containing the batch results", + "type": "array", + "readOnly": true, + "items": { + "type": "object" + } + } + } + }, + "Geometry": { + "description": "This represents the geometry for one or more geographical features (parks, state boundary etc.) and should be a `GeoJSON` compliant type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946) for details.", + "type": "object" + }, + "BatchRequestBody": { + "description": "This type represents the request body for the Batch service.", + "type": "object", + "properties": { + "batchItems": { + "description": "The list of queries/requests to process", + "type": "array", + "items": { + "description": "Batch Query object", + "type": "object", + "properties": { + "query": { + "description": "Partial query string", + "type": "string" + } + } + } + } + } + }, + "CoordinateAbbreviated": { + "description": "A location represented as a latitude and longitude.", + "type": "object", + "properties": { + "lat": { + "description": "Latitude property", + "type": "number", + "format": "double", + "readOnly": true + }, + "lon": { + "description": "Longitude property", + "type": "number", + "format": "double", + "readOnly": true + } + } + }, + "GeoJSONGeometry": { + "description": "A valid `GeoJSON` geometry object. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1) for details.", + "type": "object", + "discriminator": "type", + "required": [ + "type" + ], + "properties": { + "type": { + "description": "Specifies the `GeoJSON` geometry type. Must be one of the seven valid GeoJSON geometry types - Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon and GeometryCollection.", + "type": "string", + "enum": [ + "Point", + "MultiPoint", + "LineString", + "MultiLineString", + "Polygon", + "MultiPolygon", + "GeometryCollection" + ], + "x-ms-enum": { + "name": "GeoJSONGeometryType", + "modelAsString": false, + "values": [ + { + "value": "Point", + "description": "`GeoJSON Point` geometry." + }, + { + "value": "MultiPoint", + "description": "`GeoJSON MultiPoint` geometry." + }, + { + "value": "LineString", + "description": "`GeoJSON LineString` geometry." + }, + { + "value": "MultiLineString", + "description": "`GeoJSON MultiLineString` geometry." + }, + { + "value": "Polygon", + "description": "`GeoJSON Polygon` geometry." + }, + { + "value": "MultiPolygon", + "description": "`GeoJSON MultiPolygon` geometry." + }, + { + "value": "GeometryCollection", + "description": "`GeoJSON GeometryCollection` geometry." + } + ] + } + } + } + }, + "LineString": { + "description": "A valid `GeoJSON LineString` geometry type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.4) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the geometry. Value should always be equal to \"LineString\".", + "type": "string" + }, + "coordinates": { + "description": "Coordinates for the `LineString` geometry.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONPosition" + } + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "GeoJSONPosition": { + "description": "A valid `GeoJSON Position` geometry type. A `Position` is an array of numbers with two or more elements. The first two elements are _longitude_ and _latitude_, precisely in that order. _Altitude/Elevation_ is an optional third element. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.1) for details.", + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "PoiCategoryResponse": { + "description": "This object is returned from a successful POI Category Tree call", + "type": "object", + "properties": { + "poiCategories": { + "description": "Categories array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PoiCategoryResult" + } + } + } + }, + "PoiCategoryResult": { + "description": "POI category result", + "type": "object", + "properties": { + "id": { + "description": "Unique ID for the category. ID can be used to restrict search results to specific categories through other Search Service APIs, like [Get Search POI](https://docs.microsoft.com/rest/api/maps/search/getsearchpoi).", + "type": "integer", + "readOnly": true + }, + "name": { + "description": "Name of the category", + "type": "string", + "readOnly": true + }, + "childCategoryIds": { + "description": "Array of child category ids", + "type": "array", + "items": { + "type": "integer", + "readOnly": true + }, + "readOnly": true + }, + "synonyms": { + "description": "Array of alternative names of the category", + "type": "array", + "items": { + "type": "string", + "readOnly": true + }, + "readOnly": true + } + } + }, + "SearchPolygonResponse": { + "description": "This object is returned from a successful Search Polygon call", + "type": "object", + "properties": { + "additionalData": { + "description": "Results array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchPolygonResult" + } + } + } + }, + "SearchPolygonResult": { + "type": "object", + "properties": { + "providerID": { + "description": "ID of the returned entity", + "type": "string", + "readOnly": true + }, + "error": { + "description": "Reason for the failure to obtain data for this provider.", + "type": "string", + "readOnly": true + }, + "geometryData": { + "description": "Geometry data in GeoJSON format. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946) for details. Present only if \"error\" is not present.", + "$ref": "#/definitions/Geometry" + } + } + }, + "SearchFuzzyResponse": { + "description": "This object is returned from a successful Search Fuzzy call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchFuzzySummary" + }, + "results": { + "description": "Results array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchFuzzyResult" + } + } + } + }, + "SearchFuzzySummary": { + "description": "Summary object for a Search Fuzzy response", + "type": "object", + "readOnly": true, + "properties": { + "query": { + "description": "Query property", + "type": "string", + "readOnly": true + }, + "queryType": { + "description": "QueryType property", + "type": "string", + "readOnly": true + }, + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + }, + "offset": { + "description": "Offset property", + "type": "integer", + "readOnly": true + }, + "totalResults": { + "description": "TotalResults property", + "type": "integer", + "readOnly": true + }, + "fuzzyLevel": { + "description": "FuzzyLevel property", + "type": "integer", + "readOnly": true + } + } + }, + "SearchFuzzyResult": { + "type": "object", + "properties": { + "type": { + "description": "One of:\n* POI\n* Street\n* Geography\n* Point Address\n* Address Range\n* Cross Street", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "score": { + "$ref": "#/definitions/SearchResultScore" + }, + "info": { + "description": "Info property", + "type": "string", + "readOnly": true + }, + "entityType": { + "$ref": "#/definitions/EntityType" + }, + "poi": { + "$ref": "#/definitions/SearchResultPoi" + }, + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "viewport": { + "$ref": "#/definitions/SearchResultViewport" + }, + "entryPoints": { + "description": "Entry Points array", + "type": "array", + "items": { + "$ref": "#/definitions/SearchResultEntryPoint" + } + }, + "addressRanges": { + "$ref": "#/definitions/SearchResultAddressRanges" + }, + "dataSources": { + "$ref": "#/definitions/DataSources" + } + } + }, + "SearchPoiResponse": { + "description": "This object is returned from a successful Search POI call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchPoiSummary" + }, + "results": { + "description": "Results array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchPoiResult" + } + } + } + }, + "SearchPoiSummary": { + "description": "Summary object for a Search POI response", + "type": "object", + "readOnly": true, + "properties": { + "query": { + "description": "Query property", + "type": "string", + "readOnly": true + }, + "queryType": { + "description": "QueryType property", + "type": "string", + "readOnly": true + }, + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + }, + "offset": { + "description": "Offset property", + "type": "integer", + "readOnly": true + }, + "totalResults": { + "description": "TotalResults property", + "type": "integer", + "readOnly": true + }, + "fuzzyLevel": { + "description": "FuzzyLevel property", + "type": "integer", + "readOnly": true + }, + "geoBias": { + "$ref": "#/definitions/SearchSummaryGeoBias" + } + } + }, + "SearchPoiResult": { + "type": "object", + "properties": { + "type": { + "description": "Type property", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "score": { + "$ref": "#/definitions/SearchResultScore" + }, + "dist": { + "$ref": "#/definitions/SearchResultDistance" + }, + "info": { + "description": "Info property", + "type": "string", + "readOnly": true + }, + "entityType": { + "$ref": "#/definitions/EntityType" + }, + "poi": { + "$ref": "#/definitions/SearchResultPoi" + }, + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "viewport": { + "$ref": "#/definitions/SearchResultViewport" + }, + "entryPoints": { + "description": "Entry Points array", + "type": "array", + "items": { + "$ref": "#/definitions/SearchResultEntryPoint" + } + } + } + }, + "SearchNearbyResponse": { + "description": "This object is returned from a successful Search Nearby call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchNearbySummary" + }, + "results": { + "description": "Results array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchNearbyResult" + } + } + } + }, + "SearchNearbySummary": { + "description": "Summary object for a Search Nearby response", + "type": "object", + "readOnly": true, + "properties": { + "queryType": { + "description": "QueryType property", + "type": "string", + "readOnly": true + }, + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + }, + "offset": { + "description": "Offset property", + "type": "integer", + "readOnly": true + }, + "totalResults": { + "description": "TotalResults property", + "type": "integer", + "readOnly": true + }, + "fuzzyLevel": { + "description": "FuzzyLevel property", + "type": "integer", + "readOnly": true + }, + "geoBias": { + "$ref": "#/definitions/SearchSummaryGeoBias" + } + } + }, + "SearchNearbyResult": { + "type": "object", + "properties": { + "type": { + "description": "Type property", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "score": { + "$ref": "#/definitions/SearchResultScore" + }, + "dist": { + "$ref": "#/definitions/SearchResultDistance" + }, + "info": { + "description": "Info property", + "type": "string", + "readOnly": true + }, + "poi": { + "$ref": "#/definitions/SearchResultPoi" + }, + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "viewport": { + "$ref": "#/definitions/SearchResultViewport" + }, + "entryPoints": { + "description": "Entry Points array", + "type": "array", + "items": { + "$ref": "#/definitions/SearchResultEntryPoint" + } + } + } + }, + "SearchPoiCategoryResponse": { + "description": "This object is returned from a successful Search POI Category call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchPoiCategorySummary" + }, + "results": { + "description": "Results array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchPoiCategoryResult" + } + } + } + }, + "SearchPoiCategorySummary": { + "description": "Summary object for a Search POI Category response", + "type": "object", + "readOnly": true, + "properties": { + "query": { + "description": "Query property", + "type": "string", + "readOnly": true + }, + "queryType": { + "description": "QueryType property", + "type": "string", + "readOnly": true + }, + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + }, + "offset": { + "description": "Offset property", + "type": "integer", + "readOnly": true + }, + "totalResults": { + "description": "TotalResults property", + "type": "integer", + "readOnly": true + }, + "fuzzyLevel": { + "description": "FuzzyLevel property", + "type": "integer", + "readOnly": true + }, + "geoBias": { + "$ref": "#/definitions/SearchSummaryGeoBias" + } + } + }, + "SearchPoiCategoryResult": { + "type": "object", + "properties": { + "type": { + "description": "Type property", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "score": { + "$ref": "#/definitions/SearchResultScore" + }, + "dist": { + "$ref": "#/definitions/SearchResultDistance" + }, + "info": { + "description": "Info property", + "type": "string", + "readOnly": true + }, + "entityType": { + "$ref": "#/definitions/EntityType" + }, + "poi": { + "$ref": "#/definitions/SearchResultPoi" + }, + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "viewport": { + "$ref": "#/definitions/SearchResultViewport" + }, + "entryPoints": { + "description": "Entry Points array", + "type": "array", + "items": { + "$ref": "#/definitions/SearchResultEntryPoint" + } + } + } + }, + "SearchAddressResponse": { + "description": "This object is returned from a successful Search Address call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchAddressSummary" + }, + "results": { + "description": "Results array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchAddressResult" + } + } + } + }, + "SearchAddressSummary": { + "description": "Summary object for a Search Address response", + "type": "object", + "readOnly": true, + "properties": { + "query": { + "description": "Query property", + "type": "string", + "readOnly": true + }, + "queryType": { + "description": "QueryType property", + "type": "string", + "readOnly": true + }, + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + }, + "offset": { + "description": "Offset property", + "type": "integer", + "readOnly": true + }, + "totalResults": { + "description": "TotalResults property", + "type": "integer", + "readOnly": true + }, + "fuzzyLevel": { + "description": "FuzzyLevel property", + "type": "integer", + "readOnly": true + } + } + }, + "SearchAddressResult": { + "type": "object", + "properties": { + "type": { + "description": "One of:\n* POI\n* Street\n* Geography\n* Point Address\n* Address Range\n* Cross Street", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "score": { + "$ref": "#/definitions/SearchResultScore" + }, + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "viewport": { + "$ref": "#/definitions/SearchResultViewport" + }, + "entryPoints": { + "description": "Entry Points array", + "type": "array", + "items": { + "$ref": "#/definitions/SearchResultEntryPoint" + } + }, + "dataSources": { + "$ref": "#/definitions/DataSources" + } + } + }, + "SearchAddressReverseResponse": { + "description": "This object is returned from a successful Search Address Reverse call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchAddressReverseSummary" + }, + "addresses": { + "description": "Addresses array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchAddressReverseResult" + } + } + } + }, + "SearchAddressReverseSummary": { + "description": "Summary object for a Search Address Reverse response", + "type": "object", + "readOnly": true, + "properties": { + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + } + } + }, + "SearchAddressReverseResult": { + "type": "object", + "properties": { + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "type": "string", + "readOnly": true, + "description": "Position property in the form of \"{latitude},{longitude}\"" + }, + "matchType": { + "type": "string", + "readOnly": true, + "description": "Information on the type of match.\n\nOne of:\n * AddressPoint\n * HouseNumberRange\n * Street" + } + } + }, + "SearchAddressReverseCrossStreetResponse": { + "description": "This object is returned from a successful Search Address Reverse CrossStreet call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchAddressReverseCrossStreetSummary" + }, + "addresses": { + "description": "Addresses array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchAddressReverseCrossStreetResult" + } + } + } + }, + "SearchAddressReverseCrossStreetSummary": { + "description": "Summary object for a Search Address Reverse Cross Street response", + "type": "object", + "readOnly": true, + "properties": { + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + } + } + }, + "SearchAddressReverseCrossStreetResult": { + "type": "object", + "properties": { + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "type": "string", + "readOnly": true, + "description": "Position property in the form of \"{latitude},{longitude}\"" + } + } + }, + "SearchAddressStructuredResponse": { + "description": "This object is returned from a successful Search Address Structured call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchAddressStructuredSummary" + }, + "results": { + "description": "Results array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchAddressStructuredResult" + } + } + } + }, + "SearchAddressStructuredSummary": { + "description": "Summary object for a Search Address Structured response", + "type": "object", + "readOnly": true, + "properties": { + "query": { + "description": "Query property", + "type": "string", + "readOnly": true + }, + "queryType": { + "description": "QueryType property", + "type": "string", + "readOnly": true + }, + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + }, + "limit": { + "description": "Maximum number of responses that will be returned", + "readOnly": true, + "type": "integer" + }, + "offset": { + "description": "Offset property", + "type": "integer", + "readOnly": true + }, + "totalResults": { + "description": "TotalResults property", + "type": "integer", + "readOnly": true + }, + "fuzzyLevel": { + "description": "FuzzyLevel property", + "type": "integer", + "readOnly": true + }, + "geoBias": { + "$ref": "#/definitions/SearchSummaryGeoBias" + } + } + }, + "SearchAddressStructuredResult": { + "type": "object", + "properties": { + "type": { + "description": "Type property", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "score": { + "$ref": "#/definitions/SearchResultScore" + }, + "dist": { + "$ref": "#/definitions/SearchResultDistance" + }, + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "viewport": { + "$ref": "#/definitions/SearchResultViewport" + }, + "entryPoints": { + "description": "Entry Points array", + "type": "array", + "items": { + "$ref": "#/definitions/SearchResultEntryPoint" + } + }, + "addressRanges": { + "$ref": "#/definitions/SearchResultAddressRanges" + } + } + }, + "SearchGeometryResponse": { + "description": "This object is returned from a successful Search By Geometry call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchGeometrySummary" + }, + "results": { + "description": "A list of Search Inside Geometry results.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchGeometryResult" + } + } + } + }, + "SearchGeometrySummary": { + "description": "Summary object for a Search Geometry response", + "type": "object", + "readOnly": true, + "properties": { + "query": { + "description": "Query property", + "type": "string", + "readOnly": true + }, + "queryType": { + "description": "QueryType property", + "type": "string", + "readOnly": true + }, + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + }, + "offset": { + "description": "Offset property", + "type": "integer", + "readOnly": true + }, + "totalResults": { + "description": "TotalResults property", + "type": "integer", + "readOnly": true + }, + "fuzzyLevel": { + "description": "FuzzyLevel property", + "type": "integer", + "readOnly": true + } + } + }, + "SearchGeometryResult": { + "description": "This type represents the Search Inside Geometry result object.", + "type": "object", + "properties": { + "type": { + "description": "Type property", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "score": { + "$ref": "#/definitions/SearchResultScore" + }, + "info": { + "description": "Info property", + "type": "string", + "readOnly": true + }, + "entityType": { + "$ref": "#/definitions/EntityType" + }, + "poi": { + "$ref": "#/definitions/SearchResultPoi" + }, + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "viewport": { + "$ref": "#/definitions/SearchResultViewport" + }, + "entryPoints": { + "description": "Entry Points array", + "type": "array", + "items": { + "$ref": "#/definitions/SearchResultEntryPoint" + } + } + } + }, + "SearchAlongRouteResponse": { + "description": "This object is returned from a successful Search Along Route call.", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/SearchAlongRouteSummary" + }, + "results": { + "description": "A list of Search Along Route results.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchAlongRouteResult" + } + } + } + }, + "SearchAlongRouteSummary": { + "description": "Summary object for a Search Along Route response", + "type": "object", + "readOnly": true, + "properties": { + "query": { + "description": "Query property", + "type": "string", + "readOnly": true + }, + "queryType": { + "description": "QueryType property", + "type": "string", + "readOnly": true + }, + "queryTime": { + "description": "QueryTime property", + "type": "integer", + "readOnly": true + }, + "numResults": { + "description": "NumResults property", + "type": "integer", + "readOnly": true + }, + "offset": { + "description": "Offset property", + "type": "integer", + "readOnly": true + }, + "totalResults": { + "description": "TotalResults property", + "type": "integer", + "readOnly": true + }, + "fuzzyLevel": { + "description": "FuzzyLevel property", + "type": "integer", + "readOnly": true + } + } + }, + "SearchAlongRouteResult": { + "description": "This type represents the Search Along Route result object.", + "type": "object", + "properties": { + "type": { + "description": "Type property", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "score": { + "$ref": "#/definitions/SearchResultScore" + }, + "info": { + "description": "Info property", + "type": "string", + "readOnly": true + }, + "entityType": { + "$ref": "#/definitions/EntityType" + }, + "poi": { + "$ref": "#/definitions/SearchResultPoi" + }, + "address": { + "$ref": "#/definitions/SearchResultAddress" + }, + "position": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "viewport": { + "$ref": "#/definitions/SearchResultViewport" + }, + "entryPoints": { + "description": "Entry Points array", + "type": "array", + "items": { + "$ref": "#/definitions/SearchResultEntryPoint" + } + }, + "dist": { + "$ref": "#/definitions/SearchResultDistance" + }, + "detourTime": { + "description": "Detour time in seconds", + "type": "number", + "readOnly": true + } + } + }, + "SearchInsideGeometryRequestBody": { + "description": "This type represents the request body for the Search Inside Geometry service.", + "type": "object", + "properties": { + "geometry": { + "$ref": "#/definitions/Geometry" + } + } + }, + "SearchAlongRouteRequestBody": { + "description": "This type represents the request body for the Search Along Route service.", + "type": "object", + "properties": { + "route": { + "$ref": "#/definitions/LineString" + } + } + }, + "SearchResultPoi": { + "description": "Details of the returned POI including information such as the name, phone, url address, and classifications.", + "type": "object", + "properties": { + "name": { + "description": "Name of the POI property", + "type": "string", + "readOnly": true + }, + "phone": { + "description": "Telephone number property", + "type": "string", + "readOnly": true + }, + "url": { + "description": "Website URL property", + "type": "string", + "readOnly": true + }, + "categorySet": { + "description": "The list of the most specific POI categories", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchResultPoiCategorySet" + } + }, + "categories": { + "description": "__[Deprecated]__ Use classifications instead. Categories array", + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true + } + }, + "classifications": { + "description": "Classification array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchResultPoiClassification" + } + }, + "brands": { + "description": "Brands array. The name of the brand for the POI being returned.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchResultPoiBrand" + } + }, + "openingHours": { + "$ref": "#/definitions/SearchResultPoiOpeningHours" + } + } + }, + "SearchResultPoiCategorySet": { + "description": "POI category", + "type": "object", + "properties": { + "id": { + "description": "Category ID", + "type": "integer", + "readOnly": true + } + } + }, + "SearchResultPoiClassification": { + "description": "The classification for the POI being returned", + "type": "object", + "properties": { + "code": { + "description": "Code property", + "type": "string", + "readOnly": true + }, + "names": { + "description": "Names array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchResultPoiClassificationName" + } + } + } + }, + "SearchResultPoiClassificationName": { + "description": "Name for the classification", + "type": "object", + "properties": { + "nameLocale": { + "description": "Name Locale property", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name property", + "type": "string", + "readOnly": true + } + } + }, + "SearchResultPoiOpeningHours": { + "description": "Opening hours for a POI (Points of Interest).", + "type": "object", + "properties": { + "mode": { + "description": "Value used in the Request", + "type": "string", + "readOnly": true + }, + "timeRanges": { + "description": "List of time ranges for the next 7 days", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SearchResultPoiOpeningHoursTimeRange" + } + } + } + }, + "SearchResultPoiOpeningHoursTimeRange": { + "description": "Open time range for a day", + "type": "object", + "properties": { + "startTime": { + "description": "The point in the next 7 days range when a given POI is being opened, or the beginning of the range if it was opened before the range.", + "$ref": "#/definitions/SearchResultPoiOpeningHoursTimeRangeTime" + }, + "endTime": { + "description": "The point in the next 7 days range when a given POI is being closed, or the beginning of the range if it was closed before the range.", + "$ref": "#/definitions/SearchResultPoiOpeningHoursTimeRangeTime" + } + } + }, + "SearchResultPoiOpeningHoursTimeRangeTime": { + "description": "Represents a date and time", + "type": "object", + "properties": { + "date": { + "description": "Represents current day in calendar year in POI time zone.", + "type": "string", + "readOnly": true + }, + "hour": { + "description": "Hours are in the 24 hour format in the local time of a POI; possible values are 0 - 23.", + "type": "integer", + "readOnly": true + }, + "minute": { + "description": "Minutes are in the local time of a POI; possible values are 0 - 59.", + "type": "integer", + "readOnly": true + } + } + }, + "SearchResultPoiBrand": { + "description": "The name of the brand for the POI being returned", + "type": "object", + "properties": { + "name": { + "description": "Name of the brand", + "type": "string", + "readOnly": true + } + } + }, + "SearchResultAddress": { + "description": "The address of the result", + "type": "object", + "properties": { + "buildingNumber": { + "description": "Building Number property", + "type": "string", + "readOnly": true + }, + "street": { + "description": "Street property", + "type": "string", + "readOnly": true + }, + "crossStreet": { + "description": "Cross Street property", + "type": "string", + "readOnly": true + }, + "streetNumber": { + "description": "Street Number property", + "type": "string", + "readOnly": true + }, + "routeNumbers": { + "description": "number of routes", + "type": "array", + "items": { + "type": "integer", + "readOnly": true + }, + "readOnly": true + }, + "streetName": { + "description": "Street Name property", + "type": "string", + "readOnly": true + }, + "streetNameAndNumber": { + "description": "Street Name and Number property", + "type": "string", + "readOnly": true + }, + "municipality": { + "description": "Municipality property", + "type": "string", + "readOnly": true + }, + "municipalitySubdivision": { + "description": "Municipality Subdivision property", + "type": "string", + "readOnly": true + }, + "countryTertiarySubdivision": { + "description": "Country Tertiary Subdivision property", + "type": "string", + "readOnly": true + }, + "countrySecondarySubdivision": { + "description": "Country Secondary Subdivision property", + "type": "string", + "readOnly": true + }, + "countrySubdivision": { + "description": "Country Subdivision property", + "type": "string", + "readOnly": true + }, + "postalCode": { + "description": "Postal Code property", + "type": "string", + "readOnly": true + }, + "extendedPostalCode": { + "description": "Extended Postal Code property", + "type": "string", + "readOnly": true + }, + "countryCode": { + "description": "Country Code property", + "type": "string", + "readOnly": true + }, + "country": { + "description": "Country property", + "type": "string", + "readOnly": true + }, + "countryCodeISO3": { + "description": "Country Code ISO3 property", + "type": "string", + "readOnly": true + }, + "freeformAddress": { + "description": "Free form Address property", + "type": "string", + "readOnly": true + }, + "countrySubdivisionName": { + "description": "Country Subdivision Name property", + "type": "string", + "readOnly": true + }, + "localName": { + "description": "An address component which represents the name of a geographic area or locality that groups a number of addressable objects for addressing purposes, without being an administrative unit. This field is used to build the `freeformAddress` property.", + "type": "string", + "readOnly": true + } + } + }, + "SearchResultViewport": { + "description": "The viewport that covers the result represented by the top-left and bottom-right coordinates of the viewport.", + "type": "object", + "properties": { + "topLeftPoint": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "btmRightPoint": { + "$ref": "#/definitions/CoordinateAbbreviated" + } + } + }, + "SearchResultEntryPoint": { + "description": "The entry point for the POI being returned.", + "type": "object", + "properties": { + "type": { + "description": "The type of entry point. Value can be either _main_ or _minor_.", + "type": "string", + "readOnly": true, + "enum": [ + "main", + "minor" + ] + }, + "position": { + "$ref": "#/definitions/CoordinateAbbreviated" + } + } + }, + "SearchResultAddressRanges": { + "description": "Describes the address range on both sides of the street for a search result. Coordinates for the start and end locations of the address range are included.", + "type": "object", + "properties": { + "rangeLeft": { + "type": "string" + }, + "rangeRight": { + "type": "string" + }, + "from": { + "$ref": "#/definitions/CoordinateAbbreviated" + }, + "to": { + "$ref": "#/definitions/CoordinateAbbreviated" + } + } + }, + "SearchResultScore": { + "description": "The value within a result set to indicate the relative matching score between results. You can use this to determine that result x is twice as likely to be as relevant as result y if the value of x is 2x the value of y. The values vary between queries and is only meant as a relative value for one result set.", + "type": "number", + "readOnly": true + }, + "SearchResultDistance": { + "description": "Straight line distance between the result and geobias location in meters.", + "type": "number", + "readOnly": true + }, + "SearchSummaryGeoBias": { + "description": "Indication when the internal search engine has applied a geospatial bias to improve the ranking of results. In some methods, this can be affected by setting the lat and lon parameters where available. In other cases it is purely internal.", + "type": "object", + "readOnly": true, + "properties": { + "lat": { + "description": "Latitude property", + "type": "number", + "readOnly": true + }, + "lon": { + "description": "Longitude property", + "type": "number", + "readOnly": true + } + } + }, + "DataSources": { + "description": "Optional section. Reference ids for use with the [Get Search Polygon](https://docs.microsoft.com/rest/api/maps/search/getsearchpolygon) API.", + "type": "object", + "properties": { + "geometry": { + "$ref": "#/definitions/DataSourcesGeometry" + } + } + }, + "DataSourcesGeometry": { + "description": "Information about the geometric shape of the result. Only present if type == Geography.", + "type": "object", + "properties": { + "id": { + "description": "Pass this as geometryId to the [Get Search Polygon](https://docs.microsoft.com/rest/api/maps/search/getsearchpolygon) API to fetch geometry information for this result.", + "type": "string", + "readOnly": true + } + } + }, + "EntityType": { + "description": "Geography entity type. Present only when entityType was requested and is available.", + "type": "string", + "enum": [ + "Country", + "CountrySubdivision", + "CountrySecondarySubdivision", + "CountryTertiarySubdivision", + "Municipality", + "MunicipalitySubdivision", + "Neighbourhood", + "PostalCodeArea" + ], + "x-ms-enum": { + "name": "EntityType", + "modelAsString": false, + "values": [ + { + "value": "Country", + "description": "Country name" + }, + { + "value": "CountrySubdivision", + "description": "State or Province" + }, + { + "value": "CountrySecondarySubdivision", + "description": "County" + }, + { + "value": "CountryTertiarySubdivision", + "description": "Named Area" + }, + { + "value": "Municipality", + "description": "City / Town" + }, + { + "value": "MunicipalitySubdivision", + "description": "Sub / Super City" + }, + { + "value": "Neighbourhood", + "description": "Neighbourhood" + }, + { + "value": "PostalCodeArea", + "description": "Postal Code / Zip Code" + } + ] + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetBuffer.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetBuffer.json new file mode 100644 index 000000000000..43e7e0727837 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetBuffer.json @@ -0,0 +1,219 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "udid": "[udid]", + "distances": "176.3" + }, + "responses": { + "200": { + "body": { + "summary": { + "udid": "[udid from request]", + "information": "1 feature processed in user data" + }, + "result": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "properties": { + "geometryId": "ExampleId", + "bufferDist": 176.3 + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -111.92483859605078, + 33.5362475 + ], + [ + -111.92487510409389, + 33.53587682761772 + ], + [ + -111.92498322523961, + 33.535520399967204 + ], + [ + -111.92515880445296, + 33.535191914363196 + ], + [ + -111.92539509432322, + 33.53490399432323 + ], + [ + -111.92568301436319, + 33.534667704452971 + ], + [ + -111.9260114999672, + 33.53449212523963 + ], + [ + -111.9263679276177, + 33.5343840040939 + ], + [ + -111.9267386, + 33.534347496050785 + ], + [ + -111.92710927238228, + 33.5343840040939 + ], + [ + -111.92746570003278, + 33.53449212523963 + ], + [ + -111.9277941856368, + 33.534667704452971 + ], + [ + -111.92808210567676, + 33.53490399432323 + ], + [ + -111.92831839554702, + 33.535191914363196 + ], + [ + -111.92849397476037, + 33.535520399967204 + ], + [ + -111.9286020959061, + 33.53587682761772 + ], + [ + -111.92863860394921, + 33.5362475 + ], + [ + -111.9286020959061, + 33.536618172382283 + ], + [ + -111.92849397476037, + 33.5369746000328 + ], + [ + -111.92831839554702, + 33.537303085636808 + ], + [ + -111.92808210567676, + 33.537591005676774 + ], + [ + -111.9277941856368, + 33.537827295547032 + ], + [ + -111.92746570003278, + 33.538002874760373 + ], + [ + -111.92710927238228, + 33.5381109959061 + ], + [ + -111.9267386, + 33.538147503949219 + ], + [ + -111.9263679276177, + 33.5381109959061 + ], + [ + -111.9260114999672, + 33.538002874760373 + ], + [ + -111.92568301436319, + 33.537827295547032 + ], + [ + -111.92539509432322, + 33.537591005676774 + ], + [ + -111.92515880445296, + 33.537303085636808 + ], + [ + -111.92498322523961, + 33.5369746000328 + ], + [ + -111.92487510409389, + 33.536618172382283 + ], + [ + -111.92483859605078, + 33.5362475 + ] + ] + ] + } + } + ] + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "ClientParams", + "message": "One or more parameters are missing.", + "innererror": { + "code": "MissingQueryParameter", + "message": "Input parameter udid is missing." + } + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetClosestPoint.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetClosestPoint.json new file mode 100644 index 000000000000..556e7a33ae6e --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetClosestPoint.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "udid": "[udid]", + "lat": 47.622942, + "lon": -122.316456 + }, + "responses": { + "200": { + "body": { + "summary": { + "sourcePoint": { + "lat": 47.622942, + "lon": -122.316456 + }, + "udid": "[udid from request]", + "information": "10 points processed in user data" + }, + "result": [ + { + "distanceInMeters": 1587492.66, + "position": { + "lat": 40.516153406773952, + "lon": -105.02860293715861 + }, + "geometryId": "1001" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "ClientParams", + "message": "One or more parameters are missing.", + "innererror": { + "code": "MissingQueryParameter", + "message": "Input parameter lon is missing." + } + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetGeofence.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetGeofence.json new file mode 100644 index 000000000000..6d01b0c8a0ca --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetGeofence.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "deviceId": "unique_device_name_under_account", + "udId": "[udId]", + "lat": 48.36, + "lon": -124.63, + "searchBuffer": 50, + "userTime": "2018-09-10T10:00:00", + "isAsync": true, + "mode": "EnterAndExit", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "geometries": [ + { + "deviceId": "unique_device_name_under_account", + "udId": "[udId]", + "geometryId": "2", + "distance": 999, + "nearestLat": 47.621954, + "nearestLon": -122.131841 + }, + { + "deviceId": "unique_device_name_under_account", + "udId": "[udId]", + "geometryId": "1", + "distance": -999, + "nearestLat": 47.609833, + "nearestLon": -122.148274 + } + ], + "expiredGeofenceGeometryId": [ + "5" + ], + "invalidPeriodGeofenceGeometryId": [ + "3", + "4" + ], + "isEventPublished": true + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "BadRequest", + "message": "Can't find user geofencing data with provided udid.", + "innererror": { + "code": "NoUserDataWithUdid" + } + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetGreatCircleDistance.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetGreatCircleDistance.json new file mode 100644 index 000000000000..e309dad87a26 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetGreatCircleDistance.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "query": "47.622942,-122.316456:47.610378,-122.200676" + }, + "responses": { + "200": { + "body": { + "summary": { + "sourcePoint": { + "lat": 47.622942, + "lon": -122.316456 + }, + "targetPoint": { + "lat": 47.610378, + "lon": -122.200676 + } + }, + "result": { + "distanceInMeters": 8797.62 + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "ClientParams", + "message": "Lat and/or lon parameters are invalid.", + "innererror": { + "code": "InvalidLatLon", + "message": "The provided coordinates '-122.316456,47.622942:47.610378,-122.200676' in query paramter are invalid, out of range, or not in the expected format" + } + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetPointInPolygon.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetPointInPolygon.json new file mode 100644 index 000000000000..88c4357c221c --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/GetPointInPolygon.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "udid": "[udid]", + "lat": 47.622942, + "lon": -122.316456 + }, + "responses": { + "200": { + "body": { + "summary": { + "sourcePoint": { + "lat": 33.5362475, + "lon": -111.9267386 + }, + "udid": "[udid from request]", + "information": "4 polygons processed in user data" + }, + "result": { + "pointInPolygons": true, + "intersectingGeometries": [ + "1001", + "1003" + ] + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "ClientParams", + "message": "Udid should be acquired from user data ingestion API.", + "innererror": { + "code": "UdidWrongFormat" + } + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostBuffer.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostBuffer.json new file mode 100644 index 000000000000..00d7798d1c99 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostBuffer.json @@ -0,0 +1,240 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "bufferRequestBody": { + "geometries": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "properties": { + "geometryId": "ExampleId" + }, + "geometry": { + "type": "Point", + "coordinates": [ + -111.9267386, + 33.5362475 + ] + } + } + ] + }, + "distances": [ + 176.3 + ] + } + }, + "responses": { + "200": { + "body": { + "summary": { + "udid": null, + "information": "1 feature processed in user data" + }, + "result": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "properties": { + "geometryId": "ExampleId", + "bufferDist": 176.3 + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -111.92483859605078, + 33.5362475 + ], + [ + -111.92487510409389, + 33.53587682761772 + ], + [ + -111.92498322523961, + 33.535520399967204 + ], + [ + -111.92515880445296, + 33.535191914363196 + ], + [ + -111.92539509432322, + 33.53490399432323 + ], + [ + -111.92568301436319, + 33.534667704452971 + ], + [ + -111.9260114999672, + 33.53449212523963 + ], + [ + -111.9263679276177, + 33.5343840040939 + ], + [ + -111.9267386, + 33.534347496050785 + ], + [ + -111.92710927238228, + 33.5343840040939 + ], + [ + -111.92746570003278, + 33.53449212523963 + ], + [ + -111.9277941856368, + 33.534667704452971 + ], + [ + -111.92808210567676, + 33.53490399432323 + ], + [ + -111.92831839554702, + 33.535191914363196 + ], + [ + -111.92849397476037, + 33.535520399967204 + ], + [ + -111.9286020959061, + 33.53587682761772 + ], + [ + -111.92863860394921, + 33.5362475 + ], + [ + -111.9286020959061, + 33.536618172382283 + ], + [ + -111.92849397476037, + 33.5369746000328 + ], + [ + -111.92831839554702, + 33.537303085636808 + ], + [ + -111.92808210567676, + 33.537591005676774 + ], + [ + -111.9277941856368, + 33.537827295547032 + ], + [ + -111.92746570003278, + 33.538002874760373 + ], + [ + -111.92710927238228, + 33.5381109959061 + ], + [ + -111.9267386, + 33.538147503949219 + ], + [ + -111.9263679276177, + 33.5381109959061 + ], + [ + -111.9260114999672, + 33.538002874760373 + ], + [ + -111.92568301436319, + 33.537827295547032 + ], + [ + -111.92539509432322, + 33.537591005676774 + ], + [ + -111.92515880445296, + 33.537303085636808 + ], + [ + -111.92498322523961, + 33.5369746000328 + ], + [ + -111.92487510409389, + 33.536618172382283 + ], + [ + -111.92483859605078, + 33.5362475 + ] + ] + ] + } + } + ] + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "ClientParams", + "message": "Request body is not a valid json.", + "innererror": { + "code": "InvalidJson", + "message": "Only 2 Json Objects accepted; Received: 1 JSON Objects" + } + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostClosestPoint.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostClosestPoint.json new file mode 100644 index 000000000000..2d9b965497f2 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostClosestPoint.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "lat": 47.622942, + "lon": -122.316456, + "closestPointRequestBody": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "properties": { + "geometryId": 1001 + }, + "geometry": { + "type": "Point", + "coordinates": [ + -105.02860293715861, + 40.516153406773952 + ] + } + }, + { + "type": "Feature", + "properties": { + "geometryId": 1002 + }, + "geometry": { + "type": "Point", + "coordinates": [ + -105.02860381672178, + 40.515990990037309 + ] + } + }, + { + "type": "Feature", + "properties": { + "geometryId": 1003 + }, + "geometry": { + "type": "Point", + "coordinates": [ + -105.02812292879467, + 40.516058678088562 + ] + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "summary": { + "sourcePoint": { + "lat": 47.622942, + "lon": -122.316456 + }, + "udid": null, + "information": "3 points processed in user data" + }, + "result": [ + { + "distanceInMeters": 1587492.66, + "position": { + "lat": 40.516153406773952, + "lon": -105.02860293715861 + }, + "geometryId": "1001" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "ClientParams", + "message": "One or more parameters are missing.", + "innererror": { + "code": "MissingQueryParameter", + "message": "Input parameter lon is missing." + } + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostGeofence.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostGeofence.json new file mode 100644 index 000000000000..d638ff7b7c6f --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostGeofence.json @@ -0,0 +1,183 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "deviceId": "unique_device_name_under_account", + "lat": 48.36, + "lon": -124.63, + "searchBuffer": 50, + "usertime": "2018-09-10T10:00:00", + "isAsync": true, + "mode": "EnterAndExit", + "subscription-key": "[subscription-key]", + "searchGeofenceRequestBody": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -122.13241226662022, + 47.61701140091722 + ], + [ + -122.12810106940353, + 47.6169969269402 + ], + [ + -122.12824948956276, + 47.61907683751349 + ], + [ + -122.12833297981392, + 47.621929787055336 + ], + [ + -122.12971398040168, + 47.62184100705295 + ], + [ + -122.1318413862121, + 47.62195364373008 + ], + [ + -122.13231034769727, + 47.61716332618121 + ], + [ + -122.13241226662022, + 47.61701140091722 + ] + ] + ] + }, + "properties": { + "geometryId": "2", + "name": "Crossroad Mall" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -122.1534220563239, + 47.60981818546625 + ], + [ + -122.153451623509, + 47.60628733146004 + ], + [ + -122.14971782206638, + 47.606250040787046 + ], + [ + -122.14817354810637, + 47.606391046012305 + ], + [ + -122.1482735128807, + 47.60983316796356 + ], + [ + -122.15225500989803, + 47.60982613678752 + ], + [ + -122.1534220563239, + 47.60981818546625 + ] + ] + ] + }, + "properties": { + "geometryId": "1", + "name": "Sammamish High school" + } + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "geometries": [ + { + "deviceId": "unique_device_name_under_account", + "geometryId": "2", + "distance": -999, + "nearestLat": 47.621954, + "nearestLon": -122.131841 + }, + { + "deviceId": "unique_device_name_under_account", + "geometryId": "1", + "distance": 999, + "nearestLat": 47.609833, + "nearestLon": -122.148274 + } + ], + "expiredGeofenceGeometryId": [], + "invalidPeriodGeofenceGeometryId": [], + "isEventPublished": true + } + }, + "400": { + "headers": { + "X-Correlation-ID": "80575fa1-2c1e-4738-834a-fcf45b58dd7c" + }, + "body": { + "error": { + "code": "BadRequest", + "message": "Lat and/or lon parameters are invalid.", + "innererror": { + "code": "InvalidLatLon" + } + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostPointInPolygon.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostPointInPolygon.json new file mode 100644 index 000000000000..5677897e923c --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/examples/PostPointInPolygon.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "lat": 33.5362475, + "lon": -111.9267386, + "pointInPolygonRequestBody": { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "properties": { + "geometryId": 1001 + }, + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -111.9267386, + 33.5362475 + ], + [ + -111.9627875, + 33.5104882 + ], + [ + -111.9027061, + 33.5004686 + ], + [ + -111.9267386, + 33.5362475 + ] + ] + ] + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "summary": { + "sourcePoint": { + "lat": 33.5362475, + "lon": -111.9267386 + }, + "udid": null, + "information": "1 polygons processed in user data" + }, + "result": { + "pointInPolygons": true, + "intersectingGeometries": [ + "1001" + ] + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "ClientParams", + "message": "Lat and/or lon parameters are invalid.", + "innererror": { + "code": "InvalidLatLon", + "message": "lon parameter value should between -180 and 180 inclusive" + } + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/spatial.json b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/spatial.json new file mode 100644 index 000000000000..06acf54d01db --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Spatial/preview/1.0/spatial.json @@ -0,0 +1,1604 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Spatial Service", + "version": "1.0", + "description": "Azure Maps Spatial REST APIs" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "202": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + }, + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "TextFormat": { + "name": "format", + "description": "Desired format of the response. Value can be either _json_ or _xml_.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json", + "xml" + ], + "x-ms-enum": { + "name": "TextFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + }, + { + "value": "xml", + "description": "[The Extensible Markup Language](https://www.w3.org/TR/xml/)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "Mode": { + "name": "mode", + "in": "query", + "description": "Mode of the geofencing async event mechanism.", + "required": false, + "type": "string", + "enum": [ + "All", + "EnterAndExit" + ], + "x-ms-enum": { + "name": "GeofenceMode", + "modelAsString": false, + "values": [ + { + "value": "All", + "description": "Publish all the query results to Azure Maps account event subscription." + }, + { + "value": "EnterAndExit", + "description": "Only publish result when user location is considered as crossing geofencing boarder." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "UdidSpatial": { + "name": "udid", + "in": "query", + "description": "The unique id returned from [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) after uploading a valid GeoJSON FeatureCollection object. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.3) for details. All the feature's properties should contain `geometryId`, which is used for identifying the geometry and is case-sensitive.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SpatialDataUploadFormat": { + "name": "dataFormat", + "description": "Data format of the content being uploaded. Currently, only `geojson` format is supported.", + "type": "string", + "in": "query", + "required": true, + "enum": [ + "geojson" + ], + "x-ms-enum": { + "name": "SpatialDataUploadFormat", + "modelAsString": false, + "values": [ + { + "value": "geojson", + "description": "[GeoJSON](https://tools.ietf.org/html/rfc7946) is a JSON based geospatial data interchange format." + } + ] + }, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/spatial/geofence/{format}": { + "get": { + "x-publish": true, + "description": "**Search Geofence Get API**\n\n**Applies to:** S1 Pricing tier.\n\nThe Geofence Get API allows you to retrieve the proximity of a coordinate to a \ngeofence that has been uploaded to the Data service. You can use the \n[Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) to upload \na geofence or set of fences. See [Geofencing GeoJSON data](https://docs.microsoft.com/en-us/azure/azure-maps/geofence-geojson) \nfor more details on the geofence data format. To query the proximity of a coordinate, you supply the location of the object you are tracking as well\nas the ID for the fence or set of fences, and the response will contain information about\nthe distance from the outer edge of the geofence. A negative value signifies that the \ncoordinate is inside of the fence while a positive value means that it is outside of the\nfence.

This API can be used for a variety of scenarios that include things like asset \ntracking, fleet management, or setting up alerts for moving objects.\n\nThe API supports [integration with Event Grid](https://docs.microsoft.com/azure/azure-maps/azure-maps-event-grid-integration). The isAsync parameter is used to enable integration with Event Grid (disabled by default).\nTo test this API, you can upload the sample data from Post Geofence API examples(Request Body) via Data Upload API and replace the [udid] from the sample request below with the udid returned by Data Upload API.\n\n\n### Geofencing InnerError code\n\nIn geofencing response error contract, `innererror` is an object containing service specific information about the error. `code` is a property in `innererror` which can map to a specific geofencing error type. The table belows shows the code mapping between all the known client error type to the corresponding geofencing error `message`.\n\ninnererror.code | error.message\n---------------------------- | -------------------------------------- \nNullDeviceId | Device Id should not be null.\nNullUdid\t | Udid should not be null.\nUdidWrongFormat| Udid should be acquired from user data ingestion API.\nInvalidUserTime| Usertime is invalid.\nInvalidSearchBuffer| Searchbuffer is invalid.\nInvalidSearchRange| The value range of searchbuffer should be from 0 to 500 meters.\nInvalidLatLon| Lat and/or lon parameters are invalid.\nInvalidIsAsyncValue| The IsAsync parameter is invalid.\nInvalidModeValue| The mode parameter invalid.\nInvalidJson| Geofencing data is not a valid json file.\nNotSupportedGeoJson| Geofencing data can't be read as a Feature or FeatureCollections.\nInvalidGeoJson| Geofencing data is invalid.\nNoUserDataWithAccountOrSubscription| Can't find user geofencing data with provided account-id and/or subscription-id.\nNoUserDataWithUdid|\tCan't find user geofencing data with provided udId.", + "operationId": "Spatial_GetGeofence", + "x-ms-examples": { + "Geofence": { + "$ref": "./examples/GetGeofence.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "deviceId", + "in": "query", + "description": "ID of the device", + "required": true, + "type": "string" + }, + { + "name": "udId", + "in": "query", + "description": "The unique id returned from [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) after uploading a valid GeoJSON FeatureCollection object. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.3) for details. All the feature's properties should contain `geometryId`, which is used for identifying the geometry and is case-sensitive.", + "required": true, + "type": "string" + }, + { + "name": "lat", + "in": "query", + "description": "The latitude of the location being passed. Example: 48.36.", + "required": true, + "type": "number" + }, + { + "name": "lon", + "in": "query", + "description": "The longitude of the location being passed. Example: -124.63.", + "required": true, + "type": "number" + }, + { + "name": "z", + "in": "query", + "description": "The sea level in meter of the location being passed. If this parameter is presented, 2D extrusion is used. Example: 200.", + "required": false, + "type": "number" + }, + { + "name": "userTime", + "in": "query", + "description": "The user request time. If not presented in the request, the default value is DateTime.Now.", + "required": false, + "type": "string" + }, + { + "name": "searchBuffer", + "in": "query", + "description": "The radius of the buffer around the geofence in meters that defines how far to search inside and outside the border of the fence against the coordinate that was provided when calculating the result. The minimum value is 0, and the maximum is 500. The default value is 50.", + "required": false, + "type": "number", + "minimum": 0, + "maximum": 500, + "default": 50 + }, + { + "name": "isAsync", + "in": "query", + "description": "If true, the request will use async event mechanism; if false, the request will be synchronized and do not trigger any event. The default value is false.", + "required": false, + "type": "boolean", + "default": false + }, + { + "$ref": "#/parameters/Mode" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK The X-Correlation-id header value is present in an async call's response and the Event Grid event data. It helps correlate the async call’s response with the corresponding Event Grid event.", + "headers": { + "X-Correlation-id": { + "description": "Value present in an async call's response and the Event Grid event data. It helps correlate the async call’s response with the corresponding Event Grid event.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/GeofenceResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "post": { + "x-publish": true, + "description": "**Search Geofence Post API**\n**Applies to:** S1 Pricing tier.\nThe Geofence Post API allows you to retrieve the proximity of a coordinate to a provided geofence or set of fences. With POST call, you do not have to upload the fence data in advance, instead you supply the location of the object you are tracking in query parameters as well as the fence or set of fences data in post request body. See [Geofencing GeoJSON data](https://docs.microsoft.com/en-us/azure/azure-maps/geofence-geojson) for more details on the geofence data format. The response will contain information about the distance from the outer edge of the geofence. A negative value signifies that the coordinate is inside of the fence while a positive value means that it is outside of the fence.

This API can be used for a variety of scenarios that include things like asset tracking, fleet management, or setting up alerts for moving objects.\n\nThe API supports [integration with Event Grid](https://docs.microsoft.com/azure/azure-maps/azure-maps-event-grid-integration). The isAsync parameter is used to enable integration with Event Grid (disabled by default).", + "operationId": "Spatial_PostGeofence", + "x-ms-examples": { + "Geofence": { + "$ref": "./examples/PostGeofence.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "deviceId", + "in": "query", + "description": "ID of the device", + "required": true, + "type": "string" + }, + { + "name": "lat", + "in": "query", + "description": "The latitude of the location being passed. Example: 48.36.", + "required": true, + "type": "number" + }, + { + "name": "lon", + "in": "query", + "description": "The longitude of the location being passed. Example: -124.63.", + "required": true, + "type": "number" + }, + { + "name": "z", + "in": "query", + "description": "The sea level in meter of the location being passed. If this parameter is presented, 2D extrusion geofencing is applied. Example: 200.", + "required": false, + "type": "number" + }, + { + "name": "userTime", + "in": "query", + "description": "The user request time. If not presented in the request, the default value is DateTime.UtcNow.", + "required": false, + "type": "string" + }, + { + "name": "searchBuffer", + "in": "query", + "description": "The radius of the buffer around the geofence in meters that defines how far to search inside and outside the border of the fence against the coordinate that was provided when calculating the result. The minimum value is 0, and the maximum is 500. The default value is 50.", + "required": false, + "type": "number", + "minimum": 0, + "maximum": 500, + "default": 50 + }, + { + "name": "isAsync", + "in": "query", + "description": "If true, the request will use async event mechanism; if false, the request will be synchronized and do not trigger any event. The default value is false.", + "required": false, + "type": "boolean", + "default": false + }, + { + "$ref": "#/parameters/Mode" + }, + { + "name": "searchGeofenceRequestBody", + "in": "body", + "description": "The geofencing GeoJSON data.", + "required": true, + "schema": { + "$ref": "#/definitions/GeoJSONFeatureCollection" + } + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK The X-Correlation-id header value is present in an async call's response and the Event Grid event data. It helps correlate the async call’s response with the corresponding Event Grid event.", + "headers": { + "X-Correlation-id": { + "description": "Value present in an async call's response and the Event Grid event data. It helps correlate the async call’s response with the corresponding Event Grid event.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/GeofenceResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/spatial/buffer/{format}": { + "post": { + "x-publish": true, + "description": "**Applies to**: S1 pricing tier.\n\nThis API returns a FeatureCollection where each Feature is a buffer around the corresponding indexed Feature of the input. The buffer could be either on the outside or the inside of the provided Feature, depending on the distance provided in the input. There must be either one distance provided per Feature in the FeatureCollection input, or if only one distance is provided, then that distance is applied to every Feature in the collection. The positive (or negative) buffer of a geometry is defined as the Minkowski sum (or difference) of the geometry with a circle of radius equal to the absolute value of the buffer distance. The buffer API always returns a polygonal result. The negative or zero-distance buffer of lines and points is always an empty polygon. The input may contain a collection of Point, MultiPoint, Polygon, MultiPolygon, LineString and MultiLineString. GeometryCollection will be ignored if provided.", + "operationId": "Spatial_PostBuffer", + "x-ms-examples": { + "PostBuffer": { + "$ref": "./examples/PostBuffer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "bufferRequestBody", + "in": "body", + "description": "The FeatureCollection and the list of distances (one per feature or one for all features).", + "required": true, + "schema": { + "$ref": "#/definitions/BufferRequestBody" + } + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BufferResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to**: S1 pricing tier.\n\nThis API returns a FeatureCollection where each Feature is a buffer around the corresponding indexed Feature of the input. The buffer could be either on the outside or the inside of the provided Feature, depending on the distance provided in the input. There must be either one distance provided per Feature in the FeatureCollection input, or if only one distance is provided, then that distance is applied to every Feature in the collection. The positive (or negative) buffer of a geometry is defined as the Minkowski sum (or difference) of the geometry with a circle of radius equal to the absolute value of the buffer distance. The buffer API always returns a polygonal result. The negative or zero-distance buffer of lines and points is always an empty polygon. The input features are provided by a GeoJSON file which is uploaded via [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) and referenced by a unique udid. The GeoJSON file may contain a collection of Point, MultiPoint, Polygon, MultiPolygon, LineString and MultiLineString. GeometryCollection will be ignored if provided. \n\nTo test this API, you can upload the sample data from [Post Buffer API](https://docs.microsoft.com/en-us/rest/api/maps/spatial/postbuffer#examples) examples(Request Body without distances array) via [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) and replace the [udid] from the [sample request below](https://docs.microsoft.com/en-us/rest/api/maps/spatial/getbuffer#examples) with the udid returned by Data Upload API.", + "operationId": "Spatial_GetBuffer", + "x-ms-examples": { + "GetBuffer": { + "$ref": "./examples/GetBuffer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "$ref": "#/parameters/UdidSpatial" + }, + { + "name": "distances", + "in": "query", + "description": "The list of distances (one per feature or one for all features), delimited by semicolons. For example, 12.34;-56.78. Positive distance will generate a buffer outside of the feature, whereas negative distance will generate a buffer inside of the feature. If the negative distance larger than the geometry itself, an empty polygon will be returned.", + "required": true, + "type": "string" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BufferResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/spatial/closestPoint/{format}": { + "post": { + "x-publish": true, + "description": "**Applies to**: S1 pricing tier.\n\nThis API returns the closest point between a base point and a given set of target points. The set of target points is provided by user data in post request body. The user data may only contain a collection of Point geometry. MultiPoint or other geometries will be ignored if provided. The algorithm does not take into account routing or traffic. The maximum number of points accepted is 100,000. Information returned includes closest point latitude, longitude, and distance in meters from the closest point.", + "operationId": "Spatial_PostClosestPoint", + "x-ms-examples": { + "PostClosestPoint": { + "$ref": "./examples/PostClosestPoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "lat", + "in": "query", + "description": "The base point latitude of the location being passed. Example: 47.622942.", + "required": true, + "type": "number" + }, + { + "name": "lon", + "in": "query", + "description": "The base point longitude of the location being passed. Example: -122.316456.", + "required": true, + "type": "number" + }, + { + "name": "numberOfClosestPoints", + "in": "query", + "description": "The number of closest points expected from response. Default: 1, minimum: 1 and maximum: 50", + "required": false, + "type": "integer" + }, + { + "name": "closestPointRequestBody", + "in": "body", + "description": "The FeatureCollection of Point geometries from which closest point to source point should be determined. All the feature's properties should contain `geometryId`, which is used for identifying the geometry and is case-sensitive.", + "required": true, + "schema": { + "$ref": "#/definitions/GeoJSONFeatureCollection" + } + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PostClosestPointResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to**: S1 pricing tier.\n\nThis API returns the closest point between a base point and a given set of points in the user uploaded data set identified by udid. The set of target points is provided by a GeoJSON file which is uploaded via [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) and referenced by a unique udid. The GeoJSON file may only contain a collection of Point geometry. MultiPoint or other geometries will be ignored if provided. The maximum number of points accepted is 100,000. The algorithm does not take into account routing or traffic. Information returned includes closest point latitude, longitude, and distance in meters from the closest point.\n\nTo test this API, you can upload the sample data from [Post Closest Point API](https://docs.microsoft.com/en-us/rest/api/maps/spatial/postclosestpoint#examples) examples(Request Body) via [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) and replace the [udid] from the [sample request below](https://docs.microsoft.com/en-us/rest/api/maps/spatial/getclosestpoint#examples) with the udid returned by Data Upload API.", + "operationId": "Spatial_GetClosestPoint", + "x-ms-examples": { + "GetClosestPoint": { + "$ref": "./examples/GetClosestPoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "$ref": "#/parameters/UdidSpatial" + }, + { + "name": "lat", + "in": "query", + "description": "The base point latitude of the location being passed. Example: 47.622942.", + "required": true, + "type": "number" + }, + { + "name": "lon", + "in": "query", + "description": "The base point longitude of the location being passed. Example: -122.316456.", + "required": true, + "type": "number" + }, + { + "name": "numberOfClosestPoints", + "in": "query", + "description": "The number of closest points expected from response. Default: 1, minimum: 1 and maximum: 50", + "required": false, + "type": "integer" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GetClosestPointResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/spatial/pointInPolygon/{format}": { + "post": { + "x-publish": true, + "description": "**Applies to**: S1 pricing tier.\n\nThis API returns a boolean value indicating whether a point is inside a set of polygons. The user data may contain Polygon and MultiPolygon geometries, other geometries will be ignored if provided. If the point is inside or on the boundary of one of these polygons, the value returned is true. In all other cases, the value returned is false. When the point is inside multiple polygons, the result will give intersecting geometries section to show all valid geometries (referenced by geometryId) in user data. The maximum number of vertices accepted to form a Polygon is 10,000.", + "operationId": "Spatial_PostPointInPolygon", + "x-ms-examples": { + "PostPointInPolygon": { + "$ref": "./examples/PostPointInPolygon.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "lat", + "in": "query", + "description": "The base point latitude of the location being passed. Example: 47.622942.", + "required": true, + "type": "number" + }, + { + "name": "lon", + "in": "query", + "description": "The base point longitude of the location being passed. Example: -122.316456.", + "required": true, + "type": "number" + }, + { + "name": "pointInPolygonRequestBody", + "in": "body", + "description": "A FeatureCollection with a set of Polygon/MultiPolygon geometries. The maximum number of vertices accepted to form a Polygon is 10,000. All the feature's properties should contain `geometryId`, which is used for identifying the geometry and is case-sensitive.", + "required": true, + "schema": { + "$ref": "#/definitions/GeoJSONFeatureCollection" + } + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PostPointInPolygonResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "get": { + "x-publish": true, + "description": "**Applies to**: S1 pricing tier.\n\nThis API returns a boolean value indicating whether a point is inside a set of polygons. The set of polygons is provided by a GeoJSON file which is uploaded via [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) and referenced by a unique udid. The GeoJSON file may contain Polygon and MultiPolygon geometries, other geometries will be ignored if provided. If the point is inside or on the boundary of one of these polygons, the value returned is true. In all other cases, the value returned is false. When the point is inside multiple polygons, the result will give intersecting geometries section to show all valid geometries(referenced by geometryId) in user data. The maximum number of vertices accepted to form a Polygon is 10,000.\n\n \nTo test this API, you can upload the sample data from [Post Point In Polygon API](https://docs.microsoft.com/en-us/rest/api/maps/spatial/postpointinpolygon#examples) examples(Request Body) via [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) and replace the [udid] from the [sample request below](https://docs.microsoft.com/en-us/rest/api/maps/spatial/getpointinpolygon#examples) with the udid returned by Data Upload API.", + "operationId": "Spatial_GetPointInPolygon", + "x-ms-examples": { + "GetPointInPolygon": { + "$ref": "./examples/GetPointInPolygon.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "$ref": "#/parameters/UdidSpatial" + }, + { + "name": "lat", + "in": "query", + "description": "The base point latitude of the location being passed. Example: 47.622942.", + "required": true, + "type": "number" + }, + { + "name": "lon", + "in": "query", + "description": "The base point longitude of the location being passed. Example: -122.316456.", + "required": true, + "type": "number" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GetPointInPolygonResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/spatial/greatCircleDistance/{format}": { + "get": { + "x-publish": true, + "description": "**Applies to**: S1 pricing tier.\n\nThis API will return the great-circle or shortest distance between two points on the surface of a sphere, measured along the surface of the sphere. This differs from calculating a straight line through the sphere's interior. This method is helpful for estimating travel distances for airplanes by calculating the shortest distance between airports.", + "operationId": "Spatial_GetGreatCircleDistance", + "x-ms-examples": { + "GetGreatCircleDistance": { + "$ref": "./examples/GetGreatCircleDistance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "in": "query", + "description": "The Coordinates through which the distance is calculated, delimited by a colon. Two coordinates are required. The first one is the source point coordinate and the last is the target point coordinate. For example, 47.622942,122.316456:57.673988,127.121513", + "required": true, + "type": "string" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GreatCircleDistanceResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "SpatialCoordinate": { + "description": "A location represented as a latitude and longitude", + "type": "object", + "properties": { + "lat": { + "description": "Latitude property", + "type": "number", + "format": "double", + "readOnly": true + }, + "lon": { + "description": "Longitude property", + "type": "number", + "format": "double", + "readOnly": true + } + } + }, + "GeoJSONFeatureCollection": { + "description": "A valid `GeoJSON FeatureCollection` object type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.3) for details.", + "type": "object", + "properties": { + "type": { + "description": "Specifies the `type` for the object. Value should always be equal to \"FeatureCollection\".", + "type": "string" + }, + "features": { + "description": "Contains a list of valid `GeoJSON Feature` objects.", + "type": "array", + "items": { + "description": "A valid `GeoJSON Feature` object type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.2) for details.", + "type": "object", + "properties": { + "type": { + "description": "Specifies the `type` for the object. Value should always be equal to \"Feature\".", + "type": "string" + }, + "geometry": { + "$ref": "#/definitions/GeoJSONGeometry" + }, + "properties": { + "description": "Properties can contain any additional metadata about the `Feature`. Value can be any JSON object or a JSON null value", + "type": "object" + } + } + } + } + }, + "required": [ + "features", + "type" + ] + }, + "GeoJSONGeometry": { + "description": "A valid `GeoJSON` geometry object. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1) for details.", + "type": "object", + "discriminator": "type", + "required": [ + "type" + ], + "properties": { + "type": { + "description": "Specifies the `GeoJSON` geometry type. Must be one of the seven valid GeoJSON geometry types - Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon and GeometryCollection.", + "type": "string", + "enum": [ + "Point", + "MultiPoint", + "LineString", + "MultiLineString", + "Polygon", + "MultiPolygon", + "GeometryCollection" + ], + "x-ms-enum": { + "name": "GeoJSONGeometryType", + "modelAsString": false, + "values": [ + { + "value": "Point", + "description": "`GeoJSON Point` geometry." + }, + { + "value": "MultiPoint", + "description": "`GeoJSON MultiPoint` geometry." + }, + { + "value": "LineString", + "description": "`GeoJSON LineString` geometry." + }, + { + "value": "MultiLineString", + "description": "`GeoJSON MultiLineString` geometry." + }, + { + "value": "Polygon", + "description": "`GeoJSON Polygon` geometry." + }, + { + "value": "MultiPolygon", + "description": "`GeoJSON MultiPolygon` geometry." + }, + { + "value": "GeometryCollection", + "description": "`GeoJSON GeometryCollection` geometry." + } + ] + } + } + } + }, + "Point": { + "description": "A valid `GeoJSON Point` geometry type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.2) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the geometry. Value should always be equal to \"Point\".", + "type": "string" + }, + "coordinates": { + "$ref": "#/definitions/GeoJSONPosition" + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "MultiLineString": { + "description": "A valid `GeoJSON MultiLineString` geometry type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.5) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the geometry. Value should always be equal to \"MultiLineString\".", + "type": "string" + }, + "coordinates": { + "description": "Coordinates for the `MultiLineString` geometry.", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONPosition" + } + } + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "Polygon": { + "description": "A valid `GeoJSON Polygon` geometry type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.6) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the object. Value should always be equal to \"Polygon\".", + "type": "string" + }, + "coordinates": { + "description": "Coordinates for the `Polygon` geometry type.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONLinearRing" + } + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "MultiPolygon": { + "description": "A valid `GeoJSON MultiPolygon` object type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.7) for details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/GeoJSONGeometry" + }, + { + "properties": { + "type": { + "description": "Specifies the `type` for the object. Value should always be equal to \"MultiPolygon\".", + "type": "string" + }, + "coordinates": { + "description": "Contains a list of valid `GeoJSON` Polygon objects. **Note** that coordinates in GeoJSON are in x, y order (longitude, latitude).", + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONLinearRing" + } + } + } + }, + "required": [ + "coordinates" + ] + } + ] + }, + "GeoJSONLinearRing": { + "description": "Though a linear ring is not explicitly represented as a GeoJSON geometry type, it helps in defining the polygon as an array of linear rings. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.6) for details.", + "type": "array", + "items": { + "$ref": "#/definitions/GeoJSONPosition" + } + }, + "GeoJSONPosition": { + "description": "A valid `GeoJSON Position` geometry type. A `Position` is an array of numbers with two or more elements. The first two elements are _longitude_ and _latitude_, precisely in that order. _Altitude/Elevation_ is an optional third element. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.1.1) for details.", + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "GeofenceGeometry": { + "description": "The geofencing geometry.", + "type": "object", + "readOnly": true, + "properties": { + "deviceId": { + "description": "ID of the device.", + "type": "string", + "readOnly": true + }, + "udId": { + "description": "The unique id returned from [Data Upload API](https://docs.microsoft.com/en-us/rest/api/maps/data/uploadPreview) after uploading a valid GeoJSON FeatureCollection object. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946#section-3.3) for details. All the feature's properties should contain `geometryId`, which is used for identifying the geometry and is case-sensitive.", + "type": "string", + "readOnly": true + }, + "geometryId": { + "description": "The unique id identifies a geometry.", + "type": "string", + "readOnly": true + }, + "distance": { + "description": "Distance from the coordinate to the closest border of the geofence. Positive means the coordinate is outside of the geofence. If the coordinate is outside of the geofence, but more than the value of searchBuffer away from the closest geofence border, then the value is 999. Negative means the coordinate is inside of the geofence. If the coordinate is inside the polygon, but more than the value of searchBuffer away from the closest geofencing border, then the value is -999. A value of 999 means that there is great confidence the coordinate is well outside the geofence. A value of -999 means that there is great confidence the coordinate is well within the geofence.", + "type": "number", + "readOnly": true + }, + "nearestLat": { + "description": "Latitude of the nearest point of the geometry.", + "type": "number", + "readOnly": true + }, + "nearestLon": { + "description": "Longitude of the nearest point of the geometry.", + "type": "number", + "readOnly": true + }, + "nearestZ": { + "description": "Sea level in meter of the nearest point on the 2D extrusion geometry. This will only be presented in response when value is provided for 'zInMeter' in the request.", + "type": "number", + "readOnly": true + } + } + }, + "GeofenceResponse": { + "description": "This object is returned from a geofence proximity call.", + "type": "object", + "properties": { + "geometries": { + "description": "Lists the fence geometries that contain the coordinate position or overlap the searchBuffer around the position.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/GeofenceGeometry" + } + }, + "expiredGeofenceGeometryId": { + "description": "Lists of the geometry ID of the geofence which is expired relative to the user time in the request.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "invalidPeriodGeofenceGeometryId": { + "description": "Lists of the geometry ID of the geofence which is in invalid period relative to the user time in the request.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "isEventPublished": { + "description": "True if at least one event is published to the Azure Maps event subscriber, false if no event is published to the Azure Maps event subscriber. This will only be presented in response when 'isAsync' query parameter is set to true.", + "type": "boolean", + "readOnly": true + } + } + }, + "BufferRequestBody": { + "description": "An object with a FeatureCollection and a list of distances. All the feature's properties should contain `geometryId`, which is used for identifying the geometry and is case-sensitive.", + "type": "object", + "properties": { + "geometries": { + "$ref": "#/definitions/GeoJSONFeatureCollection" + }, + "distances": { + "description": "List of the distances to compute the buffer for, one-to-one per Feature in the collection, or one for all Features in the collection.", + "type": "array", + "items": { + "type": "number" + } + } + } + }, + "BufferResponse": { + "description": "This object is returned from a successful Spatial Buffer call.", + "type": "object", + "properties": { + "summary": { + "description": "Summary of the call.", + "type": "object", + "readOnly": true, + "properties": { + "udid": { + "description": "The udid for the user data if one exists", + "type": "string", + "readOnly": true + }, + "information": { + "description": "The information about what happened during the call.", + "type": "string", + "readOnly": true + } + } + }, + "result": { + "description": "The FeatureCollection of buffers for the input.", + "$ref": "#/definitions/GeoJSONFeatureCollection" + } + } + }, + "BoundingBoxResponse": { + "description": "This object is returned from a successful Spatial BoundingBox call.", + "type": "object", + "properties": { + "summary": { + "description": "Summary of the call.", + "type": "object", + "readOnly": true, + "properties": { + "udid": { + "description": "The udid for the user data if one exists", + "type": "string", + "readOnly": true + }, + "information": { + "description": "The information about what happened during the call.", + "type": "string", + "readOnly": true + } + } + }, + "result": { + "description": "The bounding box of the input feature collection.", + "type": "object", + "readOnly": true, + "properties": { + "feature": { + "description": "The resulting feature with bounding box geometry", + "type": "object", + "readOnly": true + } + } + } + } + }, + "GetClosestPointResponse": { + "description": "This object is returned from a successful Get Spatial Closest Point call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/GetClosestPointSummary" + }, + "result": { + "$ref": "#/definitions/ClosestPointResult" + } + } + }, + "PostClosestPointResponse": { + "description": "This object is returned from a successful Post Spatial Closest Point call", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/PostClosestPointSummary" + }, + "result": { + "$ref": "#/definitions/ClosestPointResult" + } + } + }, + "GetClosestPointSummary": { + "description": "Get Closest Point Summary object", + "type": "object", + "readOnly": true, + "properties": { + "sourcePoint": { + "$ref": "#/definitions/SpatialCoordinate" + }, + "udid": { + "description": "A unique data id (udid) for the uploaded content", + "type": "string", + "readOnly": true + }, + "information": { + "description": "Processing information", + "type": "string", + "readOnly": true + } + } + }, + "PostClosestPointSummary": { + "description": "Post Closest Point Summary object", + "type": "object", + "readOnly": true, + "properties": { + "sourcePoint": { + "$ref": "#/definitions/SpatialCoordinate" + }, + "udid": { + "description": "A unique data id (udid) for the uploaded content. Udid is not applicable for POST spatial operations(set to null)", + "type": "string", + "readOnly": true + }, + "information": { + "description": "Processing information", + "type": "string", + "readOnly": true + } + } + }, + "ClosestPointResult": { + "description": "Closest Point Result Array", + "type": "array", + "items": { + "$ref": "#/definitions/ClosestPointResultEntry" + } + }, + "ClosestPointResultEntry": { + "description": "Closest Point Result Entry Object", + "type": "object", + "readOnly": true, + "properties": { + "distanceInMeters": { + "description": "The distance in meters from the source point to the closest point", + "type": "number", + "readOnly": true + }, + "position": { + "$ref": "#/definitions/SpatialCoordinate" + }, + "geometryId": { + "description": "The unique id identifies a geometry", + "type": "string", + "readOnly": true + } + } + }, + "GetPointInPolygonResponse": { + "description": "Returns true if point is within the polygon, false otherwise", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/GetPointInPolygonSummary" + }, + "result": { + "$ref": "#/definitions/PointInPolygonResult" + } + } + }, + "PostPointInPolygonResponse": { + "description": "Returns true if point is within the polygon, false otherwise", + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/PostPointInPolygonSummary" + }, + "result": { + "$ref": "#/definitions/PointInPolygonResult" + } + } + }, + "GetPointInPolygonSummary": { + "description": "Point In Polygon Summary object", + "type": "object", + "readOnly": true, + "properties": { + "sourcePoint": { + "$ref": "#/definitions/SpatialCoordinate" + }, + "udid": { + "description": "A unique data id (udid) for the uploaded content", + "type": "string", + "readOnly": true + }, + "information": { + "description": "Processing information", + "type": "string", + "readOnly": true + } + } + }, + "PostPointInPolygonSummary": { + "description": "Point In Polygon Summary object", + "type": "object", + "readOnly": true, + "properties": { + "sourcePoint": { + "$ref": "#/definitions/SpatialCoordinate" + }, + "udid": { + "description": "A unique data id (udid) for the uploaded content. Udid is not applicable for POST spatial operations(set to null)", + "type": "string", + "readOnly": true + }, + "information": { + "description": "Processing information", + "type": "string", + "readOnly": true + } + } + }, + "PointInPolygonResult": { + "description": "Point In Polygon Result Object", + "type": "object", + "properties": { + "pointInPolygons": { + "description": "Point In Polygons Property", + "type": "boolean", + "readOnly": true + }, + "intersectingGeometries": { + "description": "Geometries array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/GeometryId" + } + } + } + }, + "GeometryId": { + "description": "The Spatial geometry", + "type": "string", + "readOnly": true + }, + "GreatCircleDistanceResponse": { + "description": "This object is returned from a successful Great Circle Distance call", + "type": "object", + "properties": { + "summary": { + "description": "Summary object", + "type": "object", + "readOnly": true, + "properties": { + "sourcePoint": { + "$ref": "#/definitions/SpatialCoordinate" + }, + "targetPoint": { + "$ref": "#/definitions/SpatialCoordinate" + } + } + }, + "result": { + "description": "Result Object", + "type": "object", + "readOnly": true, + "properties": { + "distanceInMeters": { + "description": "The great circle distance in meters from the source point to the target point", + "type": "number", + "readOnly": true + } + } + } + } + }, + "UploadDataRequestBody": { + "description": "This type represents the request body for Spatial Data Upload.", + "type": "object" + }, + "UploadDataResponse": { + "description": "The response model for the spatial data upload API. Returns a unique data id (udid) for the uploaded content.", + "type": "object", + "properties": { + "udid": { + "description": "A unique data id (udid) for the uploaded content.", + "type": "string", + "readOnly": true + } + } + }, + "UploadDataAcceptedResponse": { + "description": "The response model for the spatial data upload API. Returns the current status and a status URI.", + "type": "object", + "properties": { + "status": { + "description": "Current status of the long running upload operation.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Create.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Create.json new file mode 100644 index 000000000000..8767d242b699 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Create.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "datasetId": "[dataset-Id]" + }, + "responses": { + "201": { + "headers": { + "Location": "https://atlas.microsoft.com/tileset/{tilesetId}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + }, + "body": { + "operationId": "{operationId}", + "status": "Succeeded", + "created": "2020-01-02 1:02:03 AM +00:00", + "resourceLocation": "https://atlas.microsoft.com/tileset/{tilesetId}?api-version=1.0" + } + }, + "202": { + "headers": { + "Location": "https://atlas.microsoft.com/tileset/operations/{operationId}?api-version=1.0", + "Access-Control-Expose-Headers": "Location" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Delete.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Delete.json new file mode 100644 index 000000000000..8f36f5a7d813 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/Delete.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]", + "tilesetId": "25084fb7-307a-4720-8f91-7952a0b91012" + }, + "responses": { + "204": { + "body": {} + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/List.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/List.json new file mode 100644 index 000000000000..382cb4025edf --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/examples/List.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "tilesets": [ + { + "tilesetId": "d8fa86de-bb0f-4a02-a6ff-62ae7545dd84", + "datasetId": "63b18a6b-ac35-4b23-a1d9-ffa1003ad50b", + "description": "My first tileset", + "minZoom": 16, + "maxZoom": 18, + "bbox": [ + -122.13595, + 47.636524, + -122.1329, + 47.637525 + ] + }, + { + "tilesetId": "b8dca8b3-8aad-4afe-abd6-0efe37b5a2e3", + "datasetId": "c0a01139-662e-4d5a-bf5f-92ea4a292aad", + "description": "My second tileset", + "minZoom": 19, + "maxZoom": 19, + "bbox": [ + -122.13595, + 47.636524, + -122.1329, + 47.637525 + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/tileset.json b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/tileset.json new file mode 100644 index 000000000000..fa4aaaf6ef44 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Tileset/preview/1.0/tileset.json @@ -0,0 +1,479 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Tileset Service", + "version": "1.0", + "description": "APIs for managing Tilesets." + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "201Async": { + "description": "The resource has been created successfully.", + "schema": { + "$ref": "#/definitions/LongRunningOperationResult" + }, + "headers": { + "Location": { + "type": "string", + "description": "A URI where details on the newly created resource can be found." + } + } + }, + "202Async": { + "description": "**Supported only for async request.**\nRequest Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "DatasetIdQuery": { + "name": "datasetId", + "description": "The unique `datasetId` that the tileset create API uses to retrieve features to generate tiles. The `datasetId` must have been obtained from a successful [Dataset Create API](/en-us/rest/api/maps/dataset/createpreview) call.", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "client" + }, + "TilesetId": { + "name": "tilesetId", + "description": "The Tileset Id", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "DescriptionTileset": { + "name": "description", + "description": "User provided description of the tileset.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/tileset/create/vector": { + "post": { + "x-publish": true, + "description": "**Tileset Create API**\n\n**Applies to**: S1 pricing tier.\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API \nand SDK. The Tileset API is part of Creator.\n\nThe Tileset Create API allows the caller to create a tileset from a dataset. A tileset contains a set of tiles that can be consumed \nfrom the [Get Map Tile](/rest/api/maps/render/getmaptile) to retrieve custom tiles. To make a dataset, use the \n[DataSet Create API](/rest/api/maps/dataset/createpreview).\n\n## Submit Create Request\n\nTo create your tileset you will make a `POST` request with an empty body. The `datasetId` query parameter will be \nused as the source of the tileset data.\n\nThe Create Tileset API is a \n[long-running request](https://aka.ms/am-creator-lrt).", + "operationId": "Tileset_CreatePreview", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Create Tileset by providing a Dataset Id": { + "$ref": "./examples/Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/DatasetIdQuery" + }, + { + "$ref": "#/parameters/DescriptionTileset" + } + ], + "responses": { + "201": { + "$ref": "#/responses/201Async" + }, + "202": { + "$ref": "#/responses/202Async" + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/tileset": { + "get": { + "x-publish": true, + "description": "**Tileset List API**\n\n**Applies to:** S1 pricing tier.\n
\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Tileset API is part of Creator.\nThis API allows the caller to fetch a list of all tilesets created. \n
", + "operationId": "Tileset_ListPreview", + "x-ms-examples": { + "Get a list of all tilesets": { + "$ref": "./examples/List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "List tileset request completed successfully. The response body contains a list of all tilesets.", + "schema": { + "$ref": "#/definitions/TilesetListResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/tileset/{tilesetId}": { + "delete": { + "x-publish": true, + "description": "**Tileset Delete API**\n\n**Applies to:** S1 pricing tier.\n
\n\nCreator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Tileset API is part of Creator.\nThis API allows the caller to delete a created tileset.
\nYou can use this API if a tileset is no longer needed. \n\n### Submit Delete Request\n\nTo delete your content you will issue a `DELETE` request where the path will contain the `tilesetId` of the tileset to delete.
\n\n#### Delete request \"Successful\"\n\nThe Tileset Delete API returns a HTTP `204 No Content` response with an empty body, if the tileset was deleted successfully.
\n\n#### Delete request \"Failed\"\n\nA HTTP `400 Bad Request` error response will be returned if the tileset with the passed-in `tilesetId` is not found. \n\nHere is a sample error response:\n\n
\n\n```json\n{\n \"error\": {\n \"code\": \"400 BadRequest\",\n \"message\": \"Bad request - Tileset Id: d85b5b27-5fc4-4599-8b50-47160e90f8ce does not exist.\"\n }\n}\n```", + "operationId": "Tileset_DeletePreview", + "x-ms-examples": { + "Delete a created tileset": { + "$ref": "./examples/Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TilesetId" + } + ], + "responses": { + "204": { + "description": "Tileset delete request completed successfully.", + "schema": { + "$ref": "#/definitions/TilesetDeleteResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "LongRunningOperationResult": { + "description": "The response model for a Long-Running Operations API.", + "type": "object", + "properties": { + "operationId": { + "description": "The Id for this long-running operation.", + "type": "string" + }, + "status": { + "description": "The status state of the request.", + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": false, + "values": [ + { + "value": "NotStarted", + "description": "The request has not started processing yet." + }, + { + "value": "Running", + "description": "The request has started processing." + }, + { + "value": "Failed", + "description": "The request has one or more failures." + }, + { + "value": "Succeeded", + "description": "The request has successfully completed." + } + ] + }, + "readOnly": true + }, + "created": { + "description": "The created timestamp.", + "type": "string", + "readOnly": true + }, + "resourceLocation": { + "description": "The location URI for details about the created resource. This is only provided when the request was successfully completed.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/ODataError" + }, + "warning": { + "$ref": "#/definitions/ODataError" + } + } + }, + "TilesetListResponse": { + "description": "The response model for the Tileset List API. Returns a list of all tilesets.", + "type": "object", + "properties": { + "tilesets": { + "description": "A list of all tilesets.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TilesetDetailInfo" + } + } + } + }, + "TilesetDetailInfo": { + "description": "Detail information for the data.", + "type": "object", + "properties": { + "tilesetId": { + "description": "The unique tileset id for the tileset.", + "type": "string", + "readOnly": true + }, + "datasetId": { + "description": "The unique dataset Id used to create the tileset.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description the caller provided when creating the tileset. Maximum length 1024 characters.", + "type": "string", + "readOnly": true + }, + "minZoom": { + "description": "The lowest tile zoom level tile generated for the tileset.", + "type": "integer", + "readOnly": true + }, + "maxZoom": { + "description": "The highest tile zoom level tile generated for the tileset.", + "type": "integer", + "readOnly": true + }, + "bbox": { + "description": "Bounding box which all features of the tileset lay within. Projection used - EPSG:3857. Format : 'minLon, minLat, maxLon, maxLat'.", + "type": "array", + "readOnly": true, + "items": { + "type": "number" + } + } + } + }, + "TilesetDeleteResponse": { + "description": "The response model for the Delete API. The response body will be empty signifying there's no content available for the `tilesetId` anymore.", + "type": "object" + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneByCoordinates.json b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneByCoordinates.json new file mode 100644 index 000000000000..da8cab2ca4b5 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneByCoordinates.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "47.0,-122", + "options": "all", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "Version": "2019a", + "ReferenceUtcTimestamp": "2019-06-17T22:16:59.0765556Z", + "TimeZones": [ + { + "Id": "America/Los_Angeles", + "Aliases": [ + "US/Pacific", + "US/Pacific-New" + ], + "Countries": [ + { + "Name": "United States", + "Code": "US" + } + ], + "Names": { + "ISO6391LanguageCode": "en", + "Generic": "Pacific Time", + "Standard": "Pacific Standard Time", + "Daylight": "Pacific Daylight Time" + }, + "ReferenceTime": { + "Tag": "PDT", + "StandardOffset": "-08:00:00", + "DaylightSavings": "01:00:00", + "WallTime": "2019-06-17T15:16:59.0765556-07:00", + "PosixTzValidYear": 2019, + "PosixTz": "PST+8PDT,M3.2.0,M11.1.0", + "Sunrise": "2019-06-17T05:12:21.267-07:00", + "Sunset": "2019-06-17T21:05:18.017-07:00" + }, + "RepresentativePoint": { + "Latitude": 34.05222222222222, + "Longitude": -118.24277777777777 + }, + "TimeTransitions": [ + { + "Tag": "PDT", + "StandardOffset": "-08:00:00", + "DaylightSavings": "01:00:00", + "UtcStart": "2019-03-10T10:00:00Z", + "UtcEnd": "2019-11-03T09:00:00Z" + }, + { + "Tag": "PST", + "StandardOffset": "-08:00:00", + "DaylightSavings": "00:00:00", + "UtcStart": "2019-11-03T09:00:00Z", + "UtcEnd": "2020-03-08T10:00:00Z" + }, + { + "Tag": "PDT", + "StandardOffset": "-08:00:00", + "DaylightSavings": "01:00:00", + "UtcStart": "2020-03-08T10:00:00Z", + "UtcEnd": "2020-11-01T09:00:00Z" + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneByID.json b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneByID.json new file mode 100644 index 000000000000..e3b6480a99cb --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneByID.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "Asia/Bahrain", + "options": "all", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "Version": "2018c", + "ReferenceUtcTimestamp": "2018-01-31T00:03:15.1349348Z", + "TimeZones": [ + { + "Id": "Asia/Qatar", + "Aliases": [ + "Asia/Bahrain" + ], + "Countries": [ + { + "Name": "Qatar", + "Code": "QA" + }, + { + "Name": "Bahrain", + "Code": "BH" + } + ], + "Names": { + "ISO6391LanguageCode": "en", + "Generic": "Arabian Time", + "Standard": "Arabian Standard Time", + "Daylight": "Arabian Daylight Time" + }, + "ReferenceTime": { + "Tag": "+03", + "StandardOffset": "03:00:00", + "DaylightSavings": "00:00:00", + "WallTime": "2018-01-31T03:03:15.1349348+03:00", + "PosixTzValidYear": 2018, + "PosixTz": "<+03>-3" + }, + "RepresentativePoint": { + "Latitude": 25.283333333333335, + "Longitude": 51.533333333333331 + }, + "TimeTransitions": [ + { + "Tag": "+03", + "StandardOffset": "03:00:00", + "DaylightSavings": "00:00:00", + "UtcStart": "1972-05-31T20:00:00Z", + "UtcEnd": "9999-12-31T23:59:59.9999999Z" + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneEnumIANA.json b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneEnumIANA.json new file mode 100644 index 000000000000..ff08c465adf7 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneEnumIANA.json @@ -0,0 +1,3231 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": [ + { + "id": "Africa/Bamako", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Africa/Banjul", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Africa/Conakry", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Africa/Dakar", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Africa/Freetown", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Africa/Lome", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Africa/Nouakchott", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Africa/Ouagadougou", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Africa/Sao_Tome", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Atlantic/St_Helena", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "Africa/Addis_Ababa", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Africa/Asmara", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Africa/Dar_es_Salaam", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Africa/Djibouti", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Africa/Kampala", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Africa/Mogadishu", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Indian/Antananarivo", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Indian/Comoro", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Indian/Mayotte", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Africa/Blantyre", + "isAlias": true, + "aliasOf": "Africa/Maputo", + "hasZone1970Location": true + }, + { + "id": "Africa/Bujumbura", + "isAlias": true, + "aliasOf": "Africa/Maputo", + "hasZone1970Location": true + }, + { + "id": "Africa/Gaborone", + "isAlias": true, + "aliasOf": "Africa/Maputo", + "hasZone1970Location": true + }, + { + "id": "Africa/Harare", + "isAlias": true, + "aliasOf": "Africa/Maputo", + "hasZone1970Location": true + }, + { + "id": "Africa/Kigali", + "isAlias": true, + "aliasOf": "Africa/Maputo", + "hasZone1970Location": true + }, + { + "id": "Africa/Lubumbashi", + "isAlias": true, + "aliasOf": "Africa/Maputo", + "hasZone1970Location": true + }, + { + "id": "Africa/Lusaka", + "isAlias": true, + "aliasOf": "Africa/Maputo", + "hasZone1970Location": true + }, + { + "id": "Africa/Bangui", + "isAlias": true, + "aliasOf": "Africa/Lagos", + "hasZone1970Location": true + }, + { + "id": "Africa/Brazzaville", + "isAlias": true, + "aliasOf": "Africa/Lagos", + "hasZone1970Location": true + }, + { + "id": "Africa/Douala", + "isAlias": true, + "aliasOf": "Africa/Lagos", + "hasZone1970Location": true + }, + { + "id": "Africa/Kinshasa", + "isAlias": true, + "aliasOf": "Africa/Lagos", + "hasZone1970Location": true + }, + { + "id": "Africa/Libreville", + "isAlias": true, + "aliasOf": "Africa/Lagos", + "hasZone1970Location": true + }, + { + "id": "Africa/Luanda", + "isAlias": true, + "aliasOf": "Africa/Lagos", + "hasZone1970Location": true + }, + { + "id": "Africa/Malabo", + "isAlias": true, + "aliasOf": "Africa/Lagos", + "hasZone1970Location": true + }, + { + "id": "Africa/Niamey", + "isAlias": true, + "aliasOf": "Africa/Lagos", + "hasZone1970Location": true + }, + { + "id": "Africa/Porto-Novo", + "isAlias": true, + "aliasOf": "Africa/Lagos", + "hasZone1970Location": true + }, + { + "id": "Africa/Maseru", + "isAlias": true, + "aliasOf": "Africa/Johannesburg", + "hasZone1970Location": true + }, + { + "id": "Africa/Mbabane", + "isAlias": true, + "aliasOf": "Africa/Johannesburg", + "hasZone1970Location": true + }, + { + "id": "Africa/Juba", + "isAlias": true, + "aliasOf": "Africa/Khartoum", + "hasZone1970Location": true + }, + { + "id": "Europe/Nicosia", + "isAlias": true, + "aliasOf": "Asia/Nicosia", + "hasZone1970Location": true + }, + { + "id": "Asia/Bahrain", + "isAlias": true, + "aliasOf": "Asia/Qatar", + "hasZone1970Location": true + }, + { + "id": "Asia/Aden", + "isAlias": true, + "aliasOf": "Asia/Riyadh", + "hasZone1970Location": true + }, + { + "id": "Asia/Kuwait", + "isAlias": true, + "aliasOf": "Asia/Riyadh", + "hasZone1970Location": true + }, + { + "id": "Asia/Phnom_Penh", + "isAlias": true, + "aliasOf": "Asia/Bangkok", + "hasZone1970Location": true + }, + { + "id": "Asia/Vientiane", + "isAlias": true, + "aliasOf": "Asia/Bangkok", + "hasZone1970Location": true + }, + { + "id": "Asia/Muscat", + "isAlias": true, + "aliasOf": "Asia/Dubai", + "hasZone1970Location": true + }, + { + "id": "Pacific/Saipan", + "isAlias": true, + "aliasOf": "Pacific/Guam", + "hasZone1970Location": true + }, + { + "id": "Antarctica/McMurdo", + "isAlias": true, + "aliasOf": "Pacific/Auckland", + "hasZone1970Location": true + }, + { + "id": "Pacific/Midway", + "isAlias": true, + "aliasOf": "Pacific/Pago_Pago", + "hasZone1970Location": true + }, + { + "id": "Europe/Jersey", + "isAlias": true, + "aliasOf": "Europe/London", + "hasZone1970Location": true + }, + { + "id": "Europe/Guernsey", + "isAlias": true, + "aliasOf": "Europe/London", + "hasZone1970Location": true + }, + { + "id": "Europe/Isle_of_Man", + "isAlias": true, + "aliasOf": "Europe/London", + "hasZone1970Location": true + }, + { + "id": "Europe/Mariehamn", + "isAlias": true, + "aliasOf": "Europe/Helsinki", + "hasZone1970Location": true + }, + { + "id": "Europe/Busingen", + "isAlias": true, + "aliasOf": "Europe/Zurich", + "hasZone1970Location": true + }, + { + "id": "Europe/Vatican", + "isAlias": true, + "aliasOf": "Europe/Rome", + "hasZone1970Location": true + }, + { + "id": "Europe/San_Marino", + "isAlias": true, + "aliasOf": "Europe/Rome", + "hasZone1970Location": true + }, + { + "id": "Europe/Vaduz", + "isAlias": true, + "aliasOf": "Europe/Zurich", + "hasZone1970Location": true + }, + { + "id": "Arctic/Longyearbyen", + "isAlias": true, + "aliasOf": "Europe/Oslo", + "hasZone1970Location": true + }, + { + "id": "Europe/Ljubljana", + "isAlias": true, + "aliasOf": "Europe/Belgrade", + "hasZone1970Location": true + }, + { + "id": "Europe/Podgorica", + "isAlias": true, + "aliasOf": "Europe/Belgrade", + "hasZone1970Location": true + }, + { + "id": "Europe/Sarajevo", + "isAlias": true, + "aliasOf": "Europe/Belgrade", + "hasZone1970Location": true + }, + { + "id": "Europe/Skopje", + "isAlias": true, + "aliasOf": "Europe/Belgrade", + "hasZone1970Location": true + }, + { + "id": "Europe/Zagreb", + "isAlias": true, + "aliasOf": "Europe/Belgrade", + "hasZone1970Location": true + }, + { + "id": "Europe/Bratislava", + "isAlias": true, + "aliasOf": "Europe/Prague", + "hasZone1970Location": true + }, + { + "id": "Asia/Istanbul", + "isAlias": true, + "aliasOf": "Europe/Istanbul", + "hasZone1970Location": true + }, + { + "id": "America/Cayman", + "isAlias": true, + "aliasOf": "America/Panama", + "hasZone1970Location": true + }, + { + "id": "America/Aruba", + "isAlias": true, + "aliasOf": "America/Curacao", + "hasZone1970Location": true + }, + { + "id": "America/Lower_Princes", + "isAlias": true, + "aliasOf": "America/Curacao", + "hasZone1970Location": true + }, + { + "id": "America/Kralendijk", + "isAlias": true, + "aliasOf": "America/Curacao", + "hasZone1970Location": true + }, + { + "id": "America/Anguilla", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/Antigua", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/Dominica", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/Grenada", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/Guadeloupe", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/Marigot", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/Montserrat", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/St_Barthelemy", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/St_Kitts", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/St_Lucia", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/St_Thomas", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/St_Vincent", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "America/Tortola", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "US/Pacific-New", + "isAlias": true, + "aliasOf": "America/Los_Angeles", + "hasZone1970Location": true + }, + { + "id": "GMT", + "isAlias": true, + "aliasOf": "Etc/GMT", + "hasZone1970Location": false + }, + { + "id": "Etc/Universal", + "isAlias": true, + "aliasOf": "Etc/UTC", + "hasZone1970Location": false + }, + { + "id": "Etc/Zulu", + "isAlias": true, + "aliasOf": "Etc/UTC", + "hasZone1970Location": false + }, + { + "id": "Etc/Greenwich", + "isAlias": true, + "aliasOf": "Etc/GMT", + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-0", + "isAlias": true, + "aliasOf": "Etc/GMT", + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+0", + "isAlias": true, + "aliasOf": "Etc/GMT", + "hasZone1970Location": false + }, + { + "id": "Etc/GMT0", + "isAlias": true, + "aliasOf": "Etc/GMT", + "hasZone1970Location": false + }, + { + "id": "Africa/Asmera", + "isAlias": true, + "aliasOf": "Africa/Nairobi", + "hasZone1970Location": true + }, + { + "id": "Africa/Timbuktu", + "isAlias": true, + "aliasOf": "Africa/Abidjan", + "hasZone1970Location": true + }, + { + "id": "America/Argentina/ComodRivadavia", + "isAlias": true, + "aliasOf": "America/Argentina/Catamarca", + "hasZone1970Location": true + }, + { + "id": "America/Atka", + "isAlias": true, + "aliasOf": "America/Adak", + "hasZone1970Location": true + }, + { + "id": "America/Buenos_Aires", + "isAlias": true, + "aliasOf": "America/Argentina/Buenos_Aires", + "hasZone1970Location": true + }, + { + "id": "America/Catamarca", + "isAlias": true, + "aliasOf": "America/Argentina/Catamarca", + "hasZone1970Location": true + }, + { + "id": "America/Coral_Harbour", + "isAlias": true, + "aliasOf": "America/Atikokan", + "hasZone1970Location": true + }, + { + "id": "America/Cordoba", + "isAlias": true, + "aliasOf": "America/Argentina/Cordoba", + "hasZone1970Location": true + }, + { + "id": "America/Ensenada", + "isAlias": true, + "aliasOf": "America/Tijuana", + "hasZone1970Location": true + }, + { + "id": "America/Fort_Wayne", + "isAlias": true, + "aliasOf": "America/Indiana/Indianapolis", + "hasZone1970Location": true + }, + { + "id": "America/Indianapolis", + "isAlias": true, + "aliasOf": "America/Indiana/Indianapolis", + "hasZone1970Location": true + }, + { + "id": "America/Jujuy", + "isAlias": true, + "aliasOf": "America/Argentina/Jujuy", + "hasZone1970Location": true + }, + { + "id": "America/Knox_IN", + "isAlias": true, + "aliasOf": "America/Indiana/Knox", + "hasZone1970Location": true + }, + { + "id": "America/Louisville", + "isAlias": true, + "aliasOf": "America/Kentucky/Louisville", + "hasZone1970Location": true + }, + { + "id": "America/Mendoza", + "isAlias": true, + "aliasOf": "America/Argentina/Mendoza", + "hasZone1970Location": true + }, + { + "id": "America/Montreal", + "isAlias": true, + "aliasOf": "America/Toronto", + "hasZone1970Location": true + }, + { + "id": "America/Porto_Acre", + "isAlias": true, + "aliasOf": "America/Rio_Branco", + "hasZone1970Location": true + }, + { + "id": "America/Rosario", + "isAlias": true, + "aliasOf": "America/Argentina/Cordoba", + "hasZone1970Location": true + }, + { + "id": "America/Santa_Isabel", + "isAlias": true, + "aliasOf": "America/Tijuana", + "hasZone1970Location": true + }, + { + "id": "America/Shiprock", + "isAlias": true, + "aliasOf": "America/Denver", + "hasZone1970Location": true + }, + { + "id": "America/Virgin", + "isAlias": true, + "aliasOf": "America/Port_of_Spain", + "hasZone1970Location": true + }, + { + "id": "Antarctica/South_Pole", + "isAlias": true, + "aliasOf": "Pacific/Auckland", + "hasZone1970Location": true + }, + { + "id": "Asia/Ashkhabad", + "isAlias": true, + "aliasOf": "Asia/Ashgabat", + "hasZone1970Location": true + }, + { + "id": "Asia/Calcutta", + "isAlias": true, + "aliasOf": "Asia/Kolkata", + "hasZone1970Location": true + }, + { + "id": "Asia/Chongqing", + "isAlias": true, + "aliasOf": "Asia/Shanghai", + "hasZone1970Location": true + }, + { + "id": "Asia/Chungking", + "isAlias": true, + "aliasOf": "Asia/Shanghai", + "hasZone1970Location": true + }, + { + "id": "Asia/Dacca", + "isAlias": true, + "aliasOf": "Asia/Dhaka", + "hasZone1970Location": true + }, + { + "id": "Asia/Harbin", + "isAlias": true, + "aliasOf": "Asia/Shanghai", + "hasZone1970Location": true + }, + { + "id": "Asia/Kashgar", + "isAlias": true, + "aliasOf": "Asia/Urumqi", + "hasZone1970Location": true + }, + { + "id": "Asia/Katmandu", + "isAlias": true, + "aliasOf": "Asia/Kathmandu", + "hasZone1970Location": true + }, + { + "id": "Asia/Macao", + "isAlias": true, + "aliasOf": "Asia/Macau", + "hasZone1970Location": true + }, + { + "id": "Asia/Rangoon", + "isAlias": true, + "aliasOf": "Asia/Yangon", + "hasZone1970Location": true + }, + { + "id": "Asia/Saigon", + "isAlias": true, + "aliasOf": "Asia/Ho_Chi_Minh", + "hasZone1970Location": true + }, + { + "id": "Asia/Tel_Aviv", + "isAlias": true, + "aliasOf": "Asia/Jerusalem", + "hasZone1970Location": true + }, + { + "id": "Asia/Thimbu", + "isAlias": true, + "aliasOf": "Asia/Thimphu", + "hasZone1970Location": true + }, + { + "id": "Asia/Ujung_Pandang", + "isAlias": true, + "aliasOf": "Asia/Makassar", + "hasZone1970Location": true + }, + { + "id": "Asia/Ulan_Bator", + "isAlias": true, + "aliasOf": "Asia/Ulaanbaatar", + "hasZone1970Location": true + }, + { + "id": "Atlantic/Faeroe", + "isAlias": true, + "aliasOf": "Atlantic/Faroe", + "hasZone1970Location": true + }, + { + "id": "Atlantic/Jan_Mayen", + "isAlias": true, + "aliasOf": "Europe/Oslo", + "hasZone1970Location": true + }, + { + "id": "Australia/ACT", + "isAlias": true, + "aliasOf": "Australia/Sydney", + "hasZone1970Location": true + }, + { + "id": "Australia/Canberra", + "isAlias": true, + "aliasOf": "Australia/Sydney", + "hasZone1970Location": true + }, + { + "id": "Australia/LHI", + "isAlias": true, + "aliasOf": "Australia/Lord_Howe", + "hasZone1970Location": true + }, + { + "id": "Australia/NSW", + "isAlias": true, + "aliasOf": "Australia/Sydney", + "hasZone1970Location": true + }, + { + "id": "Australia/North", + "isAlias": true, + "aliasOf": "Australia/Darwin", + "hasZone1970Location": true + }, + { + "id": "Australia/Queensland", + "isAlias": true, + "aliasOf": "Australia/Brisbane", + "hasZone1970Location": true + }, + { + "id": "Australia/South", + "isAlias": true, + "aliasOf": "Australia/Adelaide", + "hasZone1970Location": true + }, + { + "id": "Australia/Tasmania", + "isAlias": true, + "aliasOf": "Australia/Hobart", + "hasZone1970Location": true + }, + { + "id": "Australia/Victoria", + "isAlias": true, + "aliasOf": "Australia/Melbourne", + "hasZone1970Location": true + }, + { + "id": "Australia/West", + "isAlias": true, + "aliasOf": "Australia/Perth", + "hasZone1970Location": true + }, + { + "id": "Australia/Yancowinna", + "isAlias": true, + "aliasOf": "Australia/Broken_Hill", + "hasZone1970Location": true + }, + { + "id": "Brazil/Acre", + "isAlias": true, + "aliasOf": "America/Rio_Branco", + "hasZone1970Location": true + }, + { + "id": "Brazil/DeNoronha", + "isAlias": true, + "aliasOf": "America/Noronha", + "hasZone1970Location": true + }, + { + "id": "Brazil/East", + "isAlias": true, + "aliasOf": "America/Sao_Paulo", + "hasZone1970Location": true + }, + { + "id": "Brazil/West", + "isAlias": true, + "aliasOf": "America/Manaus", + "hasZone1970Location": true + }, + { + "id": "Canada/Atlantic", + "isAlias": true, + "aliasOf": "America/Halifax", + "hasZone1970Location": true + }, + { + "id": "Canada/Central", + "isAlias": true, + "aliasOf": "America/Winnipeg", + "hasZone1970Location": true + }, + { + "id": "Canada/East-Saskatchewan", + "isAlias": true, + "aliasOf": "America/Regina", + "hasZone1970Location": true + }, + { + "id": "Canada/Eastern", + "isAlias": true, + "aliasOf": "America/Toronto", + "hasZone1970Location": true + }, + { + "id": "Canada/Mountain", + "isAlias": true, + "aliasOf": "America/Edmonton", + "hasZone1970Location": true + }, + { + "id": "Canada/Newfoundland", + "isAlias": true, + "aliasOf": "America/St_Johns", + "hasZone1970Location": true + }, + { + "id": "Canada/Pacific", + "isAlias": true, + "aliasOf": "America/Vancouver", + "hasZone1970Location": true + }, + { + "id": "Canada/Saskatchewan", + "isAlias": true, + "aliasOf": "America/Regina", + "hasZone1970Location": true + }, + { + "id": "Canada/Yukon", + "isAlias": true, + "aliasOf": "America/Whitehorse", + "hasZone1970Location": true + }, + { + "id": "Chile/Continental", + "isAlias": true, + "aliasOf": "America/Santiago", + "hasZone1970Location": true + }, + { + "id": "Chile/EasterIsland", + "isAlias": true, + "aliasOf": "Pacific/Easter", + "hasZone1970Location": true + }, + { + "id": "Cuba", + "isAlias": true, + "aliasOf": "America/Havana", + "hasZone1970Location": true + }, + { + "id": "Egypt", + "isAlias": true, + "aliasOf": "Africa/Cairo", + "hasZone1970Location": true + }, + { + "id": "Eire", + "isAlias": true, + "aliasOf": "Europe/Dublin", + "hasZone1970Location": true + }, + { + "id": "Europe/Belfast", + "isAlias": true, + "aliasOf": "Europe/London", + "hasZone1970Location": true + }, + { + "id": "Europe/Tiraspol", + "isAlias": true, + "aliasOf": "Europe/Chisinau", + "hasZone1970Location": true + }, + { + "id": "GB", + "isAlias": true, + "aliasOf": "Europe/London", + "hasZone1970Location": true + }, + { + "id": "GB-Eire", + "isAlias": true, + "aliasOf": "Europe/London", + "hasZone1970Location": true + }, + { + "id": "GMT+0", + "isAlias": true, + "aliasOf": "Etc/GMT", + "hasZone1970Location": false + }, + { + "id": "GMT-0", + "isAlias": true, + "aliasOf": "Etc/GMT", + "hasZone1970Location": false + }, + { + "id": "GMT0", + "isAlias": true, + "aliasOf": "Etc/GMT", + "hasZone1970Location": false + }, + { + "id": "Greenwich", + "isAlias": true, + "aliasOf": "Etc/GMT", + "hasZone1970Location": false + }, + { + "id": "Hongkong", + "isAlias": true, + "aliasOf": "Asia/Hong_Kong", + "hasZone1970Location": true + }, + { + "id": "Iceland", + "isAlias": true, + "aliasOf": "Atlantic/Reykjavik", + "hasZone1970Location": true + }, + { + "id": "Iran", + "isAlias": true, + "aliasOf": "Asia/Tehran", + "hasZone1970Location": true + }, + { + "id": "Israel", + "isAlias": true, + "aliasOf": "Asia/Jerusalem", + "hasZone1970Location": true + }, + { + "id": "Jamaica", + "isAlias": true, + "aliasOf": "America/Jamaica", + "hasZone1970Location": true + }, + { + "id": "Japan", + "isAlias": true, + "aliasOf": "Asia/Tokyo", + "hasZone1970Location": true + }, + { + "id": "Kwajalein", + "isAlias": true, + "aliasOf": "Pacific/Kwajalein", + "hasZone1970Location": true + }, + { + "id": "Libya", + "isAlias": true, + "aliasOf": "Africa/Tripoli", + "hasZone1970Location": true + }, + { + "id": "Mexico/BajaNorte", + "isAlias": true, + "aliasOf": "America/Tijuana", + "hasZone1970Location": true + }, + { + "id": "Mexico/BajaSur", + "isAlias": true, + "aliasOf": "America/Mazatlan", + "hasZone1970Location": true + }, + { + "id": "Mexico/General", + "isAlias": true, + "aliasOf": "America/Mexico_City", + "hasZone1970Location": true + }, + { + "id": "NZ", + "isAlias": true, + "aliasOf": "Pacific/Auckland", + "hasZone1970Location": true + }, + { + "id": "NZ-CHAT", + "isAlias": true, + "aliasOf": "Pacific/Chatham", + "hasZone1970Location": true + }, + { + "id": "Navajo", + "isAlias": true, + "aliasOf": "America/Denver", + "hasZone1970Location": true + }, + { + "id": "PRC", + "isAlias": true, + "aliasOf": "Asia/Shanghai", + "hasZone1970Location": true + }, + { + "id": "Pacific/Johnston", + "isAlias": true, + "aliasOf": "Pacific/Honolulu", + "hasZone1970Location": true + }, + { + "id": "Pacific/Ponape", + "isAlias": true, + "aliasOf": "Pacific/Pohnpei", + "hasZone1970Location": true + }, + { + "id": "Pacific/Samoa", + "isAlias": true, + "aliasOf": "Pacific/Pago_Pago", + "hasZone1970Location": true + }, + { + "id": "Pacific/Truk", + "isAlias": true, + "aliasOf": "Pacific/Chuuk", + "hasZone1970Location": true + }, + { + "id": "Pacific/Yap", + "isAlias": true, + "aliasOf": "Pacific/Chuuk", + "hasZone1970Location": true + }, + { + "id": "Poland", + "isAlias": true, + "aliasOf": "Europe/Warsaw", + "hasZone1970Location": true + }, + { + "id": "Portugal", + "isAlias": true, + "aliasOf": "Europe/Lisbon", + "hasZone1970Location": true + }, + { + "id": "ROC", + "isAlias": true, + "aliasOf": "Asia/Taipei", + "hasZone1970Location": true + }, + { + "id": "ROK", + "isAlias": true, + "aliasOf": "Asia/Seoul", + "hasZone1970Location": true + }, + { + "id": "Singapore", + "isAlias": true, + "aliasOf": "Asia/Singapore", + "hasZone1970Location": true + }, + { + "id": "Turkey", + "isAlias": true, + "aliasOf": "Europe/Istanbul", + "hasZone1970Location": true + }, + { + "id": "UCT", + "isAlias": true, + "aliasOf": "Etc/UCT", + "hasZone1970Location": false + }, + { + "id": "US/Alaska", + "isAlias": true, + "aliasOf": "America/Anchorage", + "hasZone1970Location": true + }, + { + "id": "US/Aleutian", + "isAlias": true, + "aliasOf": "America/Adak", + "hasZone1970Location": true + }, + { + "id": "US/Arizona", + "isAlias": true, + "aliasOf": "America/Phoenix", + "hasZone1970Location": true + }, + { + "id": "US/Central", + "isAlias": true, + "aliasOf": "America/Chicago", + "hasZone1970Location": true + }, + { + "id": "US/East-Indiana", + "isAlias": true, + "aliasOf": "America/Indiana/Indianapolis", + "hasZone1970Location": true + }, + { + "id": "US/Eastern", + "isAlias": true, + "aliasOf": "America/New_York", + "hasZone1970Location": true + }, + { + "id": "US/Hawaii", + "isAlias": true, + "aliasOf": "Pacific/Honolulu", + "hasZone1970Location": true + }, + { + "id": "US/Indiana-Starke", + "isAlias": true, + "aliasOf": "America/Indiana/Knox", + "hasZone1970Location": true + }, + { + "id": "US/Michigan", + "isAlias": true, + "aliasOf": "America/Detroit", + "hasZone1970Location": true + }, + { + "id": "US/Mountain", + "isAlias": true, + "aliasOf": "America/Denver", + "hasZone1970Location": true + }, + { + "id": "US/Pacific", + "isAlias": true, + "aliasOf": "America/Los_Angeles", + "hasZone1970Location": true + }, + { + "id": "US/Samoa", + "isAlias": true, + "aliasOf": "Pacific/Pago_Pago", + "hasZone1970Location": true + }, + { + "id": "UTC", + "isAlias": true, + "aliasOf": "Etc/UTC", + "hasZone1970Location": false + }, + { + "id": "Universal", + "isAlias": true, + "aliasOf": "Etc/UTC", + "hasZone1970Location": false + }, + { + "id": "W-SU", + "isAlias": true, + "aliasOf": "Europe/Moscow", + "hasZone1970Location": true + }, + { + "id": "Zulu", + "isAlias": true, + "aliasOf": "Etc/UTC", + "hasZone1970Location": false + }, + { + "id": "Africa/Abidjan", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Accra", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Algiers", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Bissau", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Cairo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Casablanca", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Ceuta", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/El_Aaiun", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Johannesburg", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Khartoum", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Lagos", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Maputo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Monrovia", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Nairobi", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Ndjamena", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Tripoli", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Tunis", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Africa/Windhoek", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Adak", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Anchorage", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Araguaina", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/Buenos_Aires", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/Catamarca", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/Cordoba", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/Jujuy", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/La_Rioja", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/Mendoza", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/Rio_Gallegos", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/Salta", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/San_Juan", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/San_Luis", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/Tucuman", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Argentina/Ushuaia", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Asuncion", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Atikokan", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Bahia", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Bahia_Banderas", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Barbados", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Belem", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Belize", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Blanc-Sablon", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Boa_Vista", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Bogota", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Boise", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Cambridge_Bay", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Campo_Grande", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Cancun", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Caracas", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Cayenne", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Chicago", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Chihuahua", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Costa_Rica", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Creston", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Cuiaba", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Curacao", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Danmarkshavn", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Dawson", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Dawson_Creek", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Denver", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Detroit", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Edmonton", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Eirunepe", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/El_Salvador", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Fort_Nelson", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Fortaleza", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Glace_Bay", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Godthab", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Goose_Bay", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Grand_Turk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Guatemala", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Guayaquil", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Guyana", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Halifax", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Havana", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Hermosillo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Indiana/Indianapolis", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Indiana/Knox", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Indiana/Marengo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Indiana/Petersburg", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Indiana/Tell_City", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Indiana/Vevay", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Indiana/Vincennes", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Indiana/Winamac", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Inuvik", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Iqaluit", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Jamaica", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Juneau", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Kentucky/Louisville", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Kentucky/Monticello", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/La_Paz", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Lima", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Los_Angeles", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Maceio", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Managua", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Manaus", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Martinique", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Matamoros", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Mazatlan", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Menominee", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Merida", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Metlakatla", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Mexico_City", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Miquelon", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Moncton", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Monterrey", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Montevideo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Nassau", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/New_York", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Nipigon", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Nome", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Noronha", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/North_Dakota/Beulah", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/North_Dakota/Center", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/North_Dakota/New_Salem", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Ojinaga", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Panama", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Pangnirtung", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Paramaribo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Phoenix", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Port-au-Prince", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Port_of_Spain", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Porto_Velho", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Puerto_Rico", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Punta_Arenas", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Rainy_River", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Rankin_Inlet", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Recife", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Regina", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Resolute", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Rio_Branco", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Santarem", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Santiago", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Santo_Domingo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Sao_Paulo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Scoresbysund", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Sitka", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/St_Johns", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Swift_Current", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Tegucigalpa", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Thule", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Thunder_Bay", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Tijuana", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Toronto", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Vancouver", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Whitehorse", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Winnipeg", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Yakutat", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "America/Yellowknife", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/Casey", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/Davis", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/DumontDUrville", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/Macquarie", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/Mawson", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/Palmer", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/Rothera", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/Syowa", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/Troll", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Antarctica/Vostok", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Almaty", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Amman", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Anadyr", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Aqtau", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Aqtobe", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Ashgabat", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Atyrau", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Baghdad", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Baku", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Bangkok", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Barnaul", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Beirut", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Bishkek", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Brunei", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Chita", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Choibalsan", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Colombo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Damascus", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Dhaka", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Dili", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Dubai", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Dushanbe", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Famagusta", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Gaza", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Hebron", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Ho_Chi_Minh", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Hong_Kong", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Hovd", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Irkutsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Jakarta", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Jayapura", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Jerusalem", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Kabul", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Kamchatka", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Karachi", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Kathmandu", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Khandyga", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Kolkata", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Krasnoyarsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Kuala_Lumpur", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Kuching", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Macau", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Magadan", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Makassar", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Manila", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Nicosia", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Novokuznetsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Novosibirsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Omsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Oral", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Pontianak", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Pyongyang", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Qatar", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Qyzylorda", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Riyadh", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Sakhalin", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Samarkand", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Seoul", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Shanghai", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Singapore", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Srednekolymsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Taipei", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Tashkent", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Tbilisi", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Tehran", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Thimphu", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Tokyo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Tomsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Ulaanbaatar", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Urumqi", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Ust-Nera", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Vladivostok", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Yakutsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Yangon", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Yekaterinburg", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Asia/Yerevan", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Atlantic/Azores", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Atlantic/Bermuda", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Atlantic/Canary", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Atlantic/Cape_Verde", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Atlantic/Faroe", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Atlantic/Madeira", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Atlantic/Reykjavik", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Atlantic/South_Georgia", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Atlantic/Stanley", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Adelaide", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Brisbane", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Broken_Hill", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Currie", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Darwin", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Eucla", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Hobart", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Lindeman", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Lord_Howe", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Melbourne", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Perth", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Australia/Sydney", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "CET", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "CST6CDT", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "EET", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "EST", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "EST5EDT", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+1", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+10", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+11", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+12", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+2", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+3", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+4", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+5", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+6", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+7", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+8", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT+9", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-1", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-10", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-11", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-12", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-13", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-14", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-2", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-3", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-4", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-5", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-6", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-7", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-8", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/GMT-9", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/UCT", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Etc/UTC", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Europe/Amsterdam", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Andorra", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Astrakhan", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Athens", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Belgrade", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Berlin", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Brussels", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Bucharest", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Budapest", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Chisinau", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Copenhagen", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Dublin", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Gibraltar", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Helsinki", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Istanbul", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Kaliningrad", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Kiev", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Kirov", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Lisbon", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/London", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Luxembourg", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Madrid", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Malta", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Minsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Monaco", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Moscow", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Oslo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Paris", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Prague", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Riga", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Rome", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Samara", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Saratov", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Simferopol", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Sofia", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Stockholm", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Tallinn", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Tirane", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Ulyanovsk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Uzhgorod", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Vienna", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Vilnius", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Volgograd", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Warsaw", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Zaporozhye", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Europe/Zurich", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "HST", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Indian/Chagos", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Indian/Christmas", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Indian/Cocos", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Indian/Kerguelen", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Indian/Mahe", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Indian/Maldives", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Indian/Mauritius", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Indian/Reunion", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "MET", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "MST", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "MST7MDT", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "PST8PDT", + "isAlias": false, + "hasZone1970Location": false + }, + { + "id": "Pacific/Apia", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Auckland", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Bougainville", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Chatham", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Chuuk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Easter", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Efate", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Enderbury", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Fakaofo", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Fiji", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Funafuti", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Galapagos", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Gambier", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Guadalcanal", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Guam", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Honolulu", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Kiritimati", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Kosrae", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Kwajalein", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Majuro", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Marquesas", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Nauru", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Niue", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Norfolk", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Noumea", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Pago_Pago", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Palau", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Pitcairn", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Pohnpei", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Port_Moresby", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Rarotonga", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Tahiti", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Tarawa", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Tongatapu", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Wake", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "Pacific/Wallis", + "isAlias": false, + "hasZone1970Location": true + }, + { + "id": "WET", + "isAlias": false, + "hasZone1970Location": false + } + ] + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneEnumWindows.json b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneEnumWindows.json new file mode 100644 index 000000000000..e6d21bab33b3 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneEnumWindows.json @@ -0,0 +1,3649 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": [ + { + "WindowsId": "Dateline Standard Time", + "Territory": "001", + "IanaIds": [ + "Etc/GMT+12" + ] + }, + { + "WindowsId": "Dateline Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+12" + ] + }, + { + "WindowsId": "UTC-11", + "Territory": "001", + "IanaIds": [ + "Etc/GMT+11" + ] + }, + { + "WindowsId": "UTC-11", + "Territory": "AS", + "IanaIds": [ + "Pacific/Pago_Pago" + ] + }, + { + "WindowsId": "UTC-11", + "Territory": "NU", + "IanaIds": [ + "Pacific/Niue" + ] + }, + { + "WindowsId": "UTC-11", + "Territory": "UM", + "IanaIds": [ + "Pacific/Midway" + ] + }, + { + "WindowsId": "UTC-11", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+11" + ] + }, + { + "WindowsId": "Aleutian Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Adak" + ] + }, + { + "WindowsId": "Aleutian Standard Time", + "Territory": "US", + "IanaIds": [ + "America/Adak" + ] + }, + { + "WindowsId": "Hawaiian Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Honolulu" + ] + }, + { + "WindowsId": "Hawaiian Standard Time", + "Territory": "CK", + "IanaIds": [ + "Pacific/Rarotonga" + ] + }, + { + "WindowsId": "Hawaiian Standard Time", + "Territory": "PF", + "IanaIds": [ + "Pacific/Tahiti" + ] + }, + { + "WindowsId": "Hawaiian Standard Time", + "Territory": "UM", + "IanaIds": [ + "Pacific/Johnston" + ] + }, + { + "WindowsId": "Hawaiian Standard Time", + "Territory": "US", + "IanaIds": [ + "Pacific/Honolulu" + ] + }, + { + "WindowsId": "Hawaiian Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+10" + ] + }, + { + "WindowsId": "Marquesas Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Marquesas" + ] + }, + { + "WindowsId": "Marquesas Standard Time", + "Territory": "PF", + "IanaIds": [ + "Pacific/Marquesas" + ] + }, + { + "WindowsId": "Alaskan Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Anchorage" + ] + }, + { + "WindowsId": "Alaskan Standard Time", + "Territory": "US", + "IanaIds": [ + "America/Anchorage", + "America/Juneau", + "America/Metlakatla", + "America/Nome", + "America/Sitka", + "America/Yakutat" + ] + }, + { + "WindowsId": "UTC-09", + "Territory": "001", + "IanaIds": [ + "Etc/GMT+9" + ] + }, + { + "WindowsId": "UTC-09", + "Territory": "PF", + "IanaIds": [ + "Pacific/Gambier" + ] + }, + { + "WindowsId": "UTC-09", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+9" + ] + }, + { + "WindowsId": "Pacific Standard Time (Mexico)", + "Territory": "001", + "IanaIds": [ + "America/Tijuana" + ] + }, + { + "WindowsId": "Pacific Standard Time (Mexico)", + "Territory": "MX", + "IanaIds": [ + "America/Tijuana", + "America/Santa_Isabel" + ] + }, + { + "WindowsId": "UTC-08", + "Territory": "001", + "IanaIds": [ + "Etc/GMT+8" + ] + }, + { + "WindowsId": "UTC-08", + "Territory": "PN", + "IanaIds": [ + "Pacific/Pitcairn" + ] + }, + { + "WindowsId": "UTC-08", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+8" + ] + }, + { + "WindowsId": "Pacific Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Los_Angeles" + ] + }, + { + "WindowsId": "Pacific Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/Vancouver", + "America/Dawson", + "America/Whitehorse" + ] + }, + { + "WindowsId": "Pacific Standard Time", + "Territory": "US", + "IanaIds": [ + "America/Los_Angeles" + ] + }, + { + "WindowsId": "Pacific Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "PST8PDT" + ] + }, + { + "WindowsId": "US Mountain Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Phoenix" + ] + }, + { + "WindowsId": "US Mountain Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/Dawson_Creek", + "America/Creston", + "America/Fort_Nelson" + ] + }, + { + "WindowsId": "US Mountain Standard Time", + "Territory": "MX", + "IanaIds": [ + "America/Hermosillo" + ] + }, + { + "WindowsId": "US Mountain Standard Time", + "Territory": "US", + "IanaIds": [ + "America/Phoenix" + ] + }, + { + "WindowsId": "US Mountain Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+7" + ] + }, + { + "WindowsId": "Mountain Standard Time (Mexico)", + "Territory": "001", + "IanaIds": [ + "America/Chihuahua" + ] + }, + { + "WindowsId": "Mountain Standard Time (Mexico)", + "Territory": "MX", + "IanaIds": [ + "America/Chihuahua", + "America/Mazatlan" + ] + }, + { + "WindowsId": "Mountain Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Denver" + ] + }, + { + "WindowsId": "Mountain Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/Edmonton", + "America/Cambridge_Bay", + "America/Inuvik", + "America/Yellowknife" + ] + }, + { + "WindowsId": "Mountain Standard Time", + "Territory": "MX", + "IanaIds": [ + "America/Ojinaga" + ] + }, + { + "WindowsId": "Mountain Standard Time", + "Territory": "US", + "IanaIds": [ + "America/Denver", + "America/Boise" + ] + }, + { + "WindowsId": "Mountain Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "MST7MDT" + ] + }, + { + "WindowsId": "Central America Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Guatemala" + ] + }, + { + "WindowsId": "Central America Standard Time", + "Territory": "BZ", + "IanaIds": [ + "America/Belize" + ] + }, + { + "WindowsId": "Central America Standard Time", + "Territory": "CR", + "IanaIds": [ + "America/Costa_Rica" + ] + }, + { + "WindowsId": "Central America Standard Time", + "Territory": "EC", + "IanaIds": [ + "Pacific/Galapagos" + ] + }, + { + "WindowsId": "Central America Standard Time", + "Territory": "GT", + "IanaIds": [ + "America/Guatemala" + ] + }, + { + "WindowsId": "Central America Standard Time", + "Territory": "HN", + "IanaIds": [ + "America/Tegucigalpa" + ] + }, + { + "WindowsId": "Central America Standard Time", + "Territory": "NI", + "IanaIds": [ + "America/Managua" + ] + }, + { + "WindowsId": "Central America Standard Time", + "Territory": "SV", + "IanaIds": [ + "America/El_Salvador" + ] + }, + { + "WindowsId": "Central America Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+6" + ] + }, + { + "WindowsId": "Central Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Chicago" + ] + }, + { + "WindowsId": "Central Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/Winnipeg", + "America/Rainy_River", + "America/Rankin_Inlet", + "America/Resolute" + ] + }, + { + "WindowsId": "Central Standard Time", + "Territory": "MX", + "IanaIds": [ + "America/Matamoros" + ] + }, + { + "WindowsId": "Central Standard Time", + "Territory": "US", + "IanaIds": [ + "America/Chicago", + "America/Indiana/Knox", + "America/Indiana/Tell_City", + "America/Menominee", + "America/North_Dakota/Beulah", + "America/North_Dakota/Center", + "America/North_Dakota/New_Salem" + ] + }, + { + "WindowsId": "Central Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "CST6CDT" + ] + }, + { + "WindowsId": "Easter Island Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Easter" + ] + }, + { + "WindowsId": "Easter Island Standard Time", + "Territory": "CL", + "IanaIds": [ + "Pacific/Easter" + ] + }, + { + "WindowsId": "Central Standard Time (Mexico)", + "Territory": "001", + "IanaIds": [ + "America/Mexico_City" + ] + }, + { + "WindowsId": "Central Standard Time (Mexico)", + "Territory": "MX", + "IanaIds": [ + "America/Mexico_City", + "America/Bahia_Banderas", + "America/Merida", + "America/Monterrey" + ] + }, + { + "WindowsId": "Canada Central Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Regina" + ] + }, + { + "WindowsId": "Canada Central Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/Regina", + "America/Swift_Current" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Bogota" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "BR", + "IanaIds": [ + "America/Rio_Branco", + "America/Eirunepe" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/Coral_Harbour" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "CO", + "IanaIds": [ + "America/Bogota" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "EC", + "IanaIds": [ + "America/Guayaquil" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "JM", + "IanaIds": [ + "America/Jamaica" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "KY", + "IanaIds": [ + "America/Cayman" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "PA", + "IanaIds": [ + "America/Panama" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "PE", + "IanaIds": [ + "America/Lima" + ] + }, + { + "WindowsId": "SA Pacific Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+5" + ] + }, + { + "WindowsId": "Eastern Standard Time (Mexico)", + "Territory": "001", + "IanaIds": [ + "America/Cancun" + ] + }, + { + "WindowsId": "Eastern Standard Time (Mexico)", + "Territory": "MX", + "IanaIds": [ + "America/Cancun" + ] + }, + { + "WindowsId": "Eastern Standard Time", + "Territory": "001", + "IanaIds": [ + "America/New_York" + ] + }, + { + "WindowsId": "Eastern Standard Time", + "Territory": "BS", + "IanaIds": [ + "America/Nassau" + ] + }, + { + "WindowsId": "Eastern Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/Toronto", + "America/Iqaluit", + "America/Montreal", + "America/Nipigon", + "America/Pangnirtung", + "America/Thunder_Bay" + ] + }, + { + "WindowsId": "Eastern Standard Time", + "Territory": "US", + "IanaIds": [ + "America/New_York", + "America/Detroit", + "America/Indiana/Petersburg", + "America/Indiana/Vincennes", + "America/Indiana/Winamac", + "America/Kentucky/Monticello", + "America/Louisville" + ] + }, + { + "WindowsId": "Eastern Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "EST5EDT" + ] + }, + { + "WindowsId": "Haiti Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Port-au-Prince" + ] + }, + { + "WindowsId": "Haiti Standard Time", + "Territory": "HT", + "IanaIds": [ + "America/Port-au-Prince" + ] + }, + { + "WindowsId": "Cuba Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Havana" + ] + }, + { + "WindowsId": "Cuba Standard Time", + "Territory": "CU", + "IanaIds": [ + "America/Havana" + ] + }, + { + "WindowsId": "US Eastern Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Indianapolis" + ] + }, + { + "WindowsId": "US Eastern Standard Time", + "Territory": "US", + "IanaIds": [ + "America/Indianapolis", + "America/Indiana/Marengo", + "America/Indiana/Vevay" + ] + }, + { + "WindowsId": "Paraguay Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Asuncion" + ] + }, + { + "WindowsId": "Paraguay Standard Time", + "Territory": "PY", + "IanaIds": [ + "America/Asuncion" + ] + }, + { + "WindowsId": "Atlantic Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Halifax" + ] + }, + { + "WindowsId": "Atlantic Standard Time", + "Territory": "BM", + "IanaIds": [ + "Atlantic/Bermuda" + ] + }, + { + "WindowsId": "Atlantic Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/Halifax", + "America/Glace_Bay", + "America/Goose_Bay", + "America/Moncton" + ] + }, + { + "WindowsId": "Atlantic Standard Time", + "Territory": "GL", + "IanaIds": [ + "America/Thule" + ] + }, + { + "WindowsId": "Venezuela Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Caracas" + ] + }, + { + "WindowsId": "Venezuela Standard Time", + "Territory": "VE", + "IanaIds": [ + "America/Caracas" + ] + }, + { + "WindowsId": "Central Brazilian Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Cuiaba" + ] + }, + { + "WindowsId": "Central Brazilian Standard Time", + "Territory": "BR", + "IanaIds": [ + "America/Cuiaba", + "America/Campo_Grande" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "001", + "IanaIds": [ + "America/La_Paz" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "AG", + "IanaIds": [ + "America/Antigua" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "AI", + "IanaIds": [ + "America/Anguilla" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "AW", + "IanaIds": [ + "America/Aruba" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "BB", + "IanaIds": [ + "America/Barbados" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "BL", + "IanaIds": [ + "America/St_Barthelemy" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "BO", + "IanaIds": [ + "America/La_Paz" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "BQ", + "IanaIds": [ + "America/Kralendijk" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "BR", + "IanaIds": [ + "America/Manaus", + "America/Boa_Vista", + "America/Porto_Velho" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/Blanc-Sablon" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "CW", + "IanaIds": [ + "America/Curacao" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "DM", + "IanaIds": [ + "America/Dominica" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "DO", + "IanaIds": [ + "America/Santo_Domingo" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "GD", + "IanaIds": [ + "America/Grenada" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "GP", + "IanaIds": [ + "America/Guadeloupe" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "GY", + "IanaIds": [ + "America/Guyana" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "KN", + "IanaIds": [ + "America/St_Kitts" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "LC", + "IanaIds": [ + "America/St_Lucia" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "MF", + "IanaIds": [ + "America/Marigot" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "MQ", + "IanaIds": [ + "America/Martinique" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "MS", + "IanaIds": [ + "America/Montserrat" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "PR", + "IanaIds": [ + "America/Puerto_Rico" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "SX", + "IanaIds": [ + "America/Lower_Princes" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "TT", + "IanaIds": [ + "America/Port_of_Spain" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "VC", + "IanaIds": [ + "America/St_Vincent" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "VG", + "IanaIds": [ + "America/Tortola" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "VI", + "IanaIds": [ + "America/St_Thomas" + ] + }, + { + "WindowsId": "SA Western Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+4" + ] + }, + { + "WindowsId": "Pacific SA Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Santiago" + ] + }, + { + "WindowsId": "Pacific SA Standard Time", + "Territory": "CL", + "IanaIds": [ + "America/Santiago" + ] + }, + { + "WindowsId": "Turks And Caicos Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Grand_Turk" + ] + }, + { + "WindowsId": "Turks And Caicos Standard Time", + "Territory": "TC", + "IanaIds": [ + "America/Grand_Turk" + ] + }, + { + "WindowsId": "Newfoundland Standard Time", + "Territory": "001", + "IanaIds": [ + "America/St_Johns" + ] + }, + { + "WindowsId": "Newfoundland Standard Time", + "Territory": "CA", + "IanaIds": [ + "America/St_Johns" + ] + }, + { + "WindowsId": "Tocantins Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Araguaina" + ] + }, + { + "WindowsId": "Tocantins Standard Time", + "Territory": "BR", + "IanaIds": [ + "America/Araguaina" + ] + }, + { + "WindowsId": "E. South America Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Sao_Paulo" + ] + }, + { + "WindowsId": "E. South America Standard Time", + "Territory": "BR", + "IanaIds": [ + "America/Sao_Paulo" + ] + }, + { + "WindowsId": "SA Eastern Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Cayenne" + ] + }, + { + "WindowsId": "SA Eastern Standard Time", + "Territory": "AQ", + "IanaIds": [ + "Antarctica/Rothera" + ] + }, + { + "WindowsId": "SA Eastern Standard Time", + "Territory": "BR", + "IanaIds": [ + "America/Fortaleza", + "America/Belem", + "America/Maceio", + "America/Recife", + "America/Santarem" + ] + }, + { + "WindowsId": "SA Eastern Standard Time", + "Territory": "FK", + "IanaIds": [ + "Atlantic/Stanley" + ] + }, + { + "WindowsId": "SA Eastern Standard Time", + "Territory": "GF", + "IanaIds": [ + "America/Cayenne" + ] + }, + { + "WindowsId": "SA Eastern Standard Time", + "Territory": "SR", + "IanaIds": [ + "America/Paramaribo" + ] + }, + { + "WindowsId": "SA Eastern Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+3" + ] + }, + { + "WindowsId": "Argentina Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Buenos_Aires" + ] + }, + { + "WindowsId": "Argentina Standard Time", + "Territory": "AR", + "IanaIds": [ + "America/Buenos_Aires", + "America/Argentina/La_Rioja", + "America/Argentina/Rio_Gallegos", + "America/Argentina/Salta", + "America/Argentina/San_Juan", + "America/Argentina/San_Luis", + "America/Argentina/Tucuman", + "America/Argentina/Ushuaia", + "America/Catamarca", + "America/Cordoba", + "America/Jujuy", + "America/Mendoza" + ] + }, + { + "WindowsId": "Greenland Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Godthab" + ] + }, + { + "WindowsId": "Greenland Standard Time", + "Territory": "GL", + "IanaIds": [ + "America/Godthab" + ] + }, + { + "WindowsId": "Montevideo Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Montevideo" + ] + }, + { + "WindowsId": "Montevideo Standard Time", + "Territory": "UY", + "IanaIds": [ + "America/Montevideo" + ] + }, + { + "WindowsId": "Magallanes Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Punta_Arenas" + ] + }, + { + "WindowsId": "Magallanes Standard Time", + "Territory": "AQ", + "IanaIds": [ + "Antarctica/Palmer" + ] + }, + { + "WindowsId": "Magallanes Standard Time", + "Territory": "CL", + "IanaIds": [ + "America/Punta_Arenas" + ] + }, + { + "WindowsId": "Saint Pierre Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Miquelon" + ] + }, + { + "WindowsId": "Saint Pierre Standard Time", + "Territory": "PM", + "IanaIds": [ + "America/Miquelon" + ] + }, + { + "WindowsId": "Bahia Standard Time", + "Territory": "001", + "IanaIds": [ + "America/Bahia" + ] + }, + { + "WindowsId": "Bahia Standard Time", + "Territory": "BR", + "IanaIds": [ + "America/Bahia" + ] + }, + { + "WindowsId": "UTC-02", + "Territory": "001", + "IanaIds": [ + "Etc/GMT+2" + ] + }, + { + "WindowsId": "UTC-02", + "Territory": "BR", + "IanaIds": [ + "America/Noronha" + ] + }, + { + "WindowsId": "UTC-02", + "Territory": "GS", + "IanaIds": [ + "Atlantic/South_Georgia" + ] + }, + { + "WindowsId": "UTC-02", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+2" + ] + }, + { + "WindowsId": "Azores Standard Time", + "Territory": "001", + "IanaIds": [ + "Atlantic/Azores" + ] + }, + { + "WindowsId": "Azores Standard Time", + "Territory": "GL", + "IanaIds": [ + "America/Scoresbysund" + ] + }, + { + "WindowsId": "Azores Standard Time", + "Territory": "PT", + "IanaIds": [ + "Atlantic/Azores" + ] + }, + { + "WindowsId": "Cape Verde Standard Time", + "Territory": "001", + "IanaIds": [ + "Atlantic/Cape_Verde" + ] + }, + { + "WindowsId": "Cape Verde Standard Time", + "Territory": "CV", + "IanaIds": [ + "Atlantic/Cape_Verde" + ] + }, + { + "WindowsId": "Cape Verde Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT+1" + ] + }, + { + "WindowsId": "UTC", + "Territory": "001", + "IanaIds": [ + "Etc/GMT" + ] + }, + { + "WindowsId": "UTC", + "Territory": "GL", + "IanaIds": [ + "America/Danmarkshavn" + ] + }, + { + "WindowsId": "UTC", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT", + "Etc/UTC" + ] + }, + { + "WindowsId": "Morocco Standard Time", + "Territory": "001", + "IanaIds": [ + "Africa/Casablanca" + ] + }, + { + "WindowsId": "Morocco Standard Time", + "Territory": "EH", + "IanaIds": [ + "Africa/El_Aaiun" + ] + }, + { + "WindowsId": "Morocco Standard Time", + "Territory": "MA", + "IanaIds": [ + "Africa/Casablanca" + ] + }, + { + "WindowsId": "GMT Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/London" + ] + }, + { + "WindowsId": "GMT Standard Time", + "Territory": "ES", + "IanaIds": [ + "Atlantic/Canary" + ] + }, + { + "WindowsId": "GMT Standard Time", + "Territory": "FO", + "IanaIds": [ + "Atlantic/Faeroe" + ] + }, + { + "WindowsId": "GMT Standard Time", + "Territory": "GB", + "IanaIds": [ + "Europe/London" + ] + }, + { + "WindowsId": "GMT Standard Time", + "Territory": "GG", + "IanaIds": [ + "Europe/Guernsey" + ] + }, + { + "WindowsId": "GMT Standard Time", + "Territory": "IE", + "IanaIds": [ + "Europe/Dublin" + ] + }, + { + "WindowsId": "GMT Standard Time", + "Territory": "IM", + "IanaIds": [ + "Europe/Isle_of_Man" + ] + }, + { + "WindowsId": "GMT Standard Time", + "Territory": "JE", + "IanaIds": [ + "Europe/Jersey" + ] + }, + { + "WindowsId": "GMT Standard Time", + "Territory": "PT", + "IanaIds": [ + "Europe/Lisbon", + "Atlantic/Madeira" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "001", + "IanaIds": [ + "Atlantic/Reykjavik" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "BF", + "IanaIds": [ + "Africa/Ouagadougou" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "CI", + "IanaIds": [ + "Africa/Abidjan" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "GH", + "IanaIds": [ + "Africa/Accra" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "GM", + "IanaIds": [ + "Africa/Banjul" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "GN", + "IanaIds": [ + "Africa/Conakry" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "GW", + "IanaIds": [ + "Africa/Bissau" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "IS", + "IanaIds": [ + "Atlantic/Reykjavik" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "LR", + "IanaIds": [ + "Africa/Monrovia" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "ML", + "IanaIds": [ + "Africa/Bamako" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "MR", + "IanaIds": [ + "Africa/Nouakchott" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "SH", + "IanaIds": [ + "Atlantic/St_Helena" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "SL", + "IanaIds": [ + "Africa/Freetown" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "SN", + "IanaIds": [ + "Africa/Dakar" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "ST", + "IanaIds": [ + "Africa/Sao_Tome" + ] + }, + { + "WindowsId": "Greenwich Standard Time", + "Territory": "TG", + "IanaIds": [ + "Africa/Lome" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Berlin" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "AD", + "IanaIds": [ + "Europe/Andorra" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "AT", + "IanaIds": [ + "Europe/Vienna" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "CH", + "IanaIds": [ + "Europe/Zurich" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "DE", + "IanaIds": [ + "Europe/Berlin", + "Europe/Busingen" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "GI", + "IanaIds": [ + "Europe/Gibraltar" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "IT", + "IanaIds": [ + "Europe/Rome" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "LI", + "IanaIds": [ + "Europe/Vaduz" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "LU", + "IanaIds": [ + "Europe/Luxembourg" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "MC", + "IanaIds": [ + "Europe/Monaco" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "MT", + "IanaIds": [ + "Europe/Malta" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "NL", + "IanaIds": [ + "Europe/Amsterdam" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "NO", + "IanaIds": [ + "Europe/Oslo" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "SE", + "IanaIds": [ + "Europe/Stockholm" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "SJ", + "IanaIds": [ + "Arctic/Longyearbyen" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "SM", + "IanaIds": [ + "Europe/San_Marino" + ] + }, + { + "WindowsId": "W. Europe Standard Time", + "Territory": "VA", + "IanaIds": [ + "Europe/Vatican" + ] + }, + { + "WindowsId": "Central Europe Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Budapest" + ] + }, + { + "WindowsId": "Central Europe Standard Time", + "Territory": "AL", + "IanaIds": [ + "Europe/Tirane" + ] + }, + { + "WindowsId": "Central Europe Standard Time", + "Territory": "CZ", + "IanaIds": [ + "Europe/Prague" + ] + }, + { + "WindowsId": "Central Europe Standard Time", + "Territory": "HU", + "IanaIds": [ + "Europe/Budapest" + ] + }, + { + "WindowsId": "Central Europe Standard Time", + "Territory": "ME", + "IanaIds": [ + "Europe/Podgorica" + ] + }, + { + "WindowsId": "Central Europe Standard Time", + "Territory": "RS", + "IanaIds": [ + "Europe/Belgrade" + ] + }, + { + "WindowsId": "Central Europe Standard Time", + "Territory": "SI", + "IanaIds": [ + "Europe/Ljubljana" + ] + }, + { + "WindowsId": "Central Europe Standard Time", + "Territory": "SK", + "IanaIds": [ + "Europe/Bratislava" + ] + }, + { + "WindowsId": "Romance Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Paris" + ] + }, + { + "WindowsId": "Romance Standard Time", + "Territory": "BE", + "IanaIds": [ + "Europe/Brussels" + ] + }, + { + "WindowsId": "Romance Standard Time", + "Territory": "DK", + "IanaIds": [ + "Europe/Copenhagen" + ] + }, + { + "WindowsId": "Romance Standard Time", + "Territory": "ES", + "IanaIds": [ + "Europe/Madrid", + "Africa/Ceuta" + ] + }, + { + "WindowsId": "Romance Standard Time", + "Territory": "FR", + "IanaIds": [ + "Europe/Paris" + ] + }, + { + "WindowsId": "Central European Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Warsaw" + ] + }, + { + "WindowsId": "Central European Standard Time", + "Territory": "BA", + "IanaIds": [ + "Europe/Sarajevo" + ] + }, + { + "WindowsId": "Central European Standard Time", + "Territory": "HR", + "IanaIds": [ + "Europe/Zagreb" + ] + }, + { + "WindowsId": "Central European Standard Time", + "Territory": "MK", + "IanaIds": [ + "Europe/Skopje" + ] + }, + { + "WindowsId": "Central European Standard Time", + "Territory": "PL", + "IanaIds": [ + "Europe/Warsaw" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "001", + "IanaIds": [ + "Africa/Lagos" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "AO", + "IanaIds": [ + "Africa/Luanda" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "BJ", + "IanaIds": [ + "Africa/Porto-Novo" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "CD", + "IanaIds": [ + "Africa/Kinshasa" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "CF", + "IanaIds": [ + "Africa/Bangui" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "CG", + "IanaIds": [ + "Africa/Brazzaville" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "CM", + "IanaIds": [ + "Africa/Douala" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "DZ", + "IanaIds": [ + "Africa/Algiers" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "GA", + "IanaIds": [ + "Africa/Libreville" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "GQ", + "IanaIds": [ + "Africa/Malabo" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "NE", + "IanaIds": [ + "Africa/Niamey" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "NG", + "IanaIds": [ + "Africa/Lagos" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "TD", + "IanaIds": [ + "Africa/Ndjamena" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "TN", + "IanaIds": [ + "Africa/Tunis" + ] + }, + { + "WindowsId": "W. Central Africa Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-1" + ] + }, + { + "WindowsId": "Namibia Standard Time", + "Territory": "001", + "IanaIds": [ + "Africa/Windhoek" + ] + }, + { + "WindowsId": "Namibia Standard Time", + "Territory": "NA", + "IanaIds": [ + "Africa/Windhoek" + ] + }, + { + "WindowsId": "Jordan Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Amman" + ] + }, + { + "WindowsId": "Jordan Standard Time", + "Territory": "JO", + "IanaIds": [ + "Asia/Amman" + ] + }, + { + "WindowsId": "GTB Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Bucharest" + ] + }, + { + "WindowsId": "GTB Standard Time", + "Territory": "CY", + "IanaIds": [ + "Asia/Nicosia" + ] + }, + { + "WindowsId": "GTB Standard Time", + "Territory": "GR", + "IanaIds": [ + "Europe/Athens" + ] + }, + { + "WindowsId": "GTB Standard Time", + "Territory": "RO", + "IanaIds": [ + "Europe/Bucharest" + ] + }, + { + "WindowsId": "Middle East Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Beirut" + ] + }, + { + "WindowsId": "Middle East Standard Time", + "Territory": "LB", + "IanaIds": [ + "Asia/Beirut" + ] + }, + { + "WindowsId": "Egypt Standard Time", + "Territory": "001", + "IanaIds": [ + "Africa/Cairo" + ] + }, + { + "WindowsId": "Egypt Standard Time", + "Territory": "EG", + "IanaIds": [ + "Africa/Cairo" + ] + }, + { + "WindowsId": "E. Europe Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Chisinau" + ] + }, + { + "WindowsId": "E. Europe Standard Time", + "Territory": "MD", + "IanaIds": [ + "Europe/Chisinau" + ] + }, + { + "WindowsId": "Syria Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Damascus" + ] + }, + { + "WindowsId": "Syria Standard Time", + "Territory": "SY", + "IanaIds": [ + "Asia/Damascus" + ] + }, + { + "WindowsId": "West Bank Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Hebron" + ] + }, + { + "WindowsId": "West Bank Standard Time", + "Territory": "PS", + "IanaIds": [ + "Asia/Hebron", + "Asia/Gaza" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "001", + "IanaIds": [ + "Africa/Johannesburg" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "BI", + "IanaIds": [ + "Africa/Bujumbura" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "BW", + "IanaIds": [ + "Africa/Gaborone" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "CD", + "IanaIds": [ + "Africa/Lubumbashi" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "LS", + "IanaIds": [ + "Africa/Maseru" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "MW", + "IanaIds": [ + "Africa/Blantyre" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "MZ", + "IanaIds": [ + "Africa/Maputo" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "RW", + "IanaIds": [ + "Africa/Kigali" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "SZ", + "IanaIds": [ + "Africa/Mbabane" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "ZA", + "IanaIds": [ + "Africa/Johannesburg" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "ZM", + "IanaIds": [ + "Africa/Lusaka" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "ZW", + "IanaIds": [ + "Africa/Harare" + ] + }, + { + "WindowsId": "South Africa Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-2" + ] + }, + { + "WindowsId": "FLE Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Kiev" + ] + }, + { + "WindowsId": "FLE Standard Time", + "Territory": "AX", + "IanaIds": [ + "Europe/Mariehamn" + ] + }, + { + "WindowsId": "FLE Standard Time", + "Territory": "BG", + "IanaIds": [ + "Europe/Sofia" + ] + }, + { + "WindowsId": "FLE Standard Time", + "Territory": "EE", + "IanaIds": [ + "Europe/Tallinn" + ] + }, + { + "WindowsId": "FLE Standard Time", + "Territory": "FI", + "IanaIds": [ + "Europe/Helsinki" + ] + }, + { + "WindowsId": "FLE Standard Time", + "Territory": "LT", + "IanaIds": [ + "Europe/Vilnius" + ] + }, + { + "WindowsId": "FLE Standard Time", + "Territory": "LV", + "IanaIds": [ + "Europe/Riga" + ] + }, + { + "WindowsId": "FLE Standard Time", + "Territory": "UA", + "IanaIds": [ + "Europe/Kiev", + "Europe/Uzhgorod", + "Europe/Zaporozhye" + ] + }, + { + "WindowsId": "Israel Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Jerusalem" + ] + }, + { + "WindowsId": "Israel Standard Time", + "Territory": "IL", + "IanaIds": [ + "Asia/Jerusalem" + ] + }, + { + "WindowsId": "Kaliningrad Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Kaliningrad" + ] + }, + { + "WindowsId": "Kaliningrad Standard Time", + "Territory": "RU", + "IanaIds": [ + "Europe/Kaliningrad" + ] + }, + { + "WindowsId": "Libya Standard Time", + "Territory": "001", + "IanaIds": [ + "Africa/Tripoli" + ] + }, + { + "WindowsId": "Libya Standard Time", + "Territory": "LY", + "IanaIds": [ + "Africa/Tripoli" + ] + }, + { + "WindowsId": "Arabic Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Baghdad" + ] + }, + { + "WindowsId": "Arabic Standard Time", + "Territory": "IQ", + "IanaIds": [ + "Asia/Baghdad" + ] + }, + { + "WindowsId": "Turkey Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Istanbul" + ] + }, + { + "WindowsId": "Turkey Standard Time", + "Territory": "CY", + "IanaIds": [ + "Asia/Famagusta" + ] + }, + { + "WindowsId": "Turkey Standard Time", + "Territory": "TR", + "IanaIds": [ + "Europe/Istanbul" + ] + }, + { + "WindowsId": "Arab Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Riyadh" + ] + }, + { + "WindowsId": "Arab Standard Time", + "Territory": "BH", + "IanaIds": [ + "Asia/Bahrain" + ] + }, + { + "WindowsId": "Arab Standard Time", + "Territory": "KW", + "IanaIds": [ + "Asia/Kuwait" + ] + }, + { + "WindowsId": "Arab Standard Time", + "Territory": "QA", + "IanaIds": [ + "Asia/Qatar" + ] + }, + { + "WindowsId": "Arab Standard Time", + "Territory": "SA", + "IanaIds": [ + "Asia/Riyadh" + ] + }, + { + "WindowsId": "Arab Standard Time", + "Territory": "YE", + "IanaIds": [ + "Asia/Aden" + ] + }, + { + "WindowsId": "Belarus Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Minsk" + ] + }, + { + "WindowsId": "Belarus Standard Time", + "Territory": "BY", + "IanaIds": [ + "Europe/Minsk" + ] + }, + { + "WindowsId": "Russian Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Moscow" + ] + }, + { + "WindowsId": "Russian Standard Time", + "Territory": "RU", + "IanaIds": [ + "Europe/Moscow", + "Europe/Kirov", + "Europe/Volgograd" + ] + }, + { + "WindowsId": "Russian Standard Time", + "Territory": "UA", + "IanaIds": [ + "Europe/Simferopol" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "001", + "IanaIds": [ + "Africa/Nairobi" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "AQ", + "IanaIds": [ + "Antarctica/Syowa" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "DJ", + "IanaIds": [ + "Africa/Djibouti" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "ER", + "IanaIds": [ + "Africa/Asmera" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "ET", + "IanaIds": [ + "Africa/Addis_Ababa" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "KE", + "IanaIds": [ + "Africa/Nairobi" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "KM", + "IanaIds": [ + "Indian/Comoro" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "MG", + "IanaIds": [ + "Indian/Antananarivo" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "SD", + "IanaIds": [ + "Africa/Khartoum" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "SO", + "IanaIds": [ + "Africa/Mogadishu" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "SS", + "IanaIds": [ + "Africa/Juba" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "TZ", + "IanaIds": [ + "Africa/Dar_es_Salaam" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "UG", + "IanaIds": [ + "Africa/Kampala" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "YT", + "IanaIds": [ + "Indian/Mayotte" + ] + }, + { + "WindowsId": "E. Africa Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-3" + ] + }, + { + "WindowsId": "Iran Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Tehran" + ] + }, + { + "WindowsId": "Iran Standard Time", + "Territory": "IR", + "IanaIds": [ + "Asia/Tehran" + ] + }, + { + "WindowsId": "Arabian Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Dubai" + ] + }, + { + "WindowsId": "Arabian Standard Time", + "Territory": "AE", + "IanaIds": [ + "Asia/Dubai" + ] + }, + { + "WindowsId": "Arabian Standard Time", + "Territory": "OM", + "IanaIds": [ + "Asia/Muscat" + ] + }, + { + "WindowsId": "Arabian Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-4" + ] + }, + { + "WindowsId": "Astrakhan Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Astrakhan" + ] + }, + { + "WindowsId": "Astrakhan Standard Time", + "Territory": "RU", + "IanaIds": [ + "Europe/Astrakhan", + "Europe/Ulyanovsk" + ] + }, + { + "WindowsId": "Azerbaijan Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Baku" + ] + }, + { + "WindowsId": "Azerbaijan Standard Time", + "Territory": "AZ", + "IanaIds": [ + "Asia/Baku" + ] + }, + { + "WindowsId": "Russia Time Zone 3", + "Territory": "001", + "IanaIds": [ + "Europe/Samara" + ] + }, + { + "WindowsId": "Russia Time Zone 3", + "Territory": "RU", + "IanaIds": [ + "Europe/Samara" + ] + }, + { + "WindowsId": "Mauritius Standard Time", + "Territory": "001", + "IanaIds": [ + "Indian/Mauritius" + ] + }, + { + "WindowsId": "Mauritius Standard Time", + "Territory": "MU", + "IanaIds": [ + "Indian/Mauritius" + ] + }, + { + "WindowsId": "Mauritius Standard Time", + "Territory": "RE", + "IanaIds": [ + "Indian/Reunion" + ] + }, + { + "WindowsId": "Mauritius Standard Time", + "Territory": "SC", + "IanaIds": [ + "Indian/Mahe" + ] + }, + { + "WindowsId": "Saratov Standard Time", + "Territory": "001", + "IanaIds": [ + "Europe/Saratov" + ] + }, + { + "WindowsId": "Saratov Standard Time", + "Territory": "RU", + "IanaIds": [ + "Europe/Saratov" + ] + }, + { + "WindowsId": "Georgian Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Tbilisi" + ] + }, + { + "WindowsId": "Georgian Standard Time", + "Territory": "GE", + "IanaIds": [ + "Asia/Tbilisi" + ] + }, + { + "WindowsId": "Caucasus Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Yerevan" + ] + }, + { + "WindowsId": "Caucasus Standard Time", + "Territory": "AM", + "IanaIds": [ + "Asia/Yerevan" + ] + }, + { + "WindowsId": "Afghanistan Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Kabul" + ] + }, + { + "WindowsId": "Afghanistan Standard Time", + "Territory": "AF", + "IanaIds": [ + "Asia/Kabul" + ] + }, + { + "WindowsId": "West Asia Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Tashkent" + ] + }, + { + "WindowsId": "West Asia Standard Time", + "Territory": "AQ", + "IanaIds": [ + "Antarctica/Mawson" + ] + }, + { + "WindowsId": "West Asia Standard Time", + "Territory": "KZ", + "IanaIds": [ + "Asia/Oral", + "Asia/Aqtau", + "Asia/Aqtobe", + "Asia/Atyrau" + ] + }, + { + "WindowsId": "West Asia Standard Time", + "Territory": "MV", + "IanaIds": [ + "Indian/Maldives" + ] + }, + { + "WindowsId": "West Asia Standard Time", + "Territory": "TF", + "IanaIds": [ + "Indian/Kerguelen" + ] + }, + { + "WindowsId": "West Asia Standard Time", + "Territory": "TJ", + "IanaIds": [ + "Asia/Dushanbe" + ] + }, + { + "WindowsId": "West Asia Standard Time", + "Territory": "TM", + "IanaIds": [ + "Asia/Ashgabat" + ] + }, + { + "WindowsId": "West Asia Standard Time", + "Territory": "UZ", + "IanaIds": [ + "Asia/Tashkent", + "Asia/Samarkand" + ] + }, + { + "WindowsId": "West Asia Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-5" + ] + }, + { + "WindowsId": "Ekaterinburg Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Yekaterinburg" + ] + }, + { + "WindowsId": "Ekaterinburg Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Yekaterinburg" + ] + }, + { + "WindowsId": "Pakistan Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Karachi" + ] + }, + { + "WindowsId": "Pakistan Standard Time", + "Territory": "PK", + "IanaIds": [ + "Asia/Karachi" + ] + }, + { + "WindowsId": "India Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Calcutta" + ] + }, + { + "WindowsId": "India Standard Time", + "Territory": "IN", + "IanaIds": [ + "Asia/Calcutta" + ] + }, + { + "WindowsId": "Sri Lanka Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Colombo" + ] + }, + { + "WindowsId": "Sri Lanka Standard Time", + "Territory": "LK", + "IanaIds": [ + "Asia/Colombo" + ] + }, + { + "WindowsId": "Nepal Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Katmandu" + ] + }, + { + "WindowsId": "Nepal Standard Time", + "Territory": "NP", + "IanaIds": [ + "Asia/Katmandu" + ] + }, + { + "WindowsId": "Central Asia Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Almaty" + ] + }, + { + "WindowsId": "Central Asia Standard Time", + "Territory": "AQ", + "IanaIds": [ + "Antarctica/Vostok" + ] + }, + { + "WindowsId": "Central Asia Standard Time", + "Territory": "CN", + "IanaIds": [ + "Asia/Urumqi" + ] + }, + { + "WindowsId": "Central Asia Standard Time", + "Territory": "IO", + "IanaIds": [ + "Indian/Chagos" + ] + }, + { + "WindowsId": "Central Asia Standard Time", + "Territory": "KG", + "IanaIds": [ + "Asia/Bishkek" + ] + }, + { + "WindowsId": "Central Asia Standard Time", + "Territory": "KZ", + "IanaIds": [ + "Asia/Almaty", + "Asia/Qyzylorda" + ] + }, + { + "WindowsId": "Central Asia Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-6" + ] + }, + { + "WindowsId": "Bangladesh Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Dhaka" + ] + }, + { + "WindowsId": "Bangladesh Standard Time", + "Territory": "BD", + "IanaIds": [ + "Asia/Dhaka" + ] + }, + { + "WindowsId": "Bangladesh Standard Time", + "Territory": "BT", + "IanaIds": [ + "Asia/Thimphu" + ] + }, + { + "WindowsId": "Omsk Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Omsk" + ] + }, + { + "WindowsId": "Omsk Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Omsk" + ] + }, + { + "WindowsId": "Myanmar Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Rangoon" + ] + }, + { + "WindowsId": "Myanmar Standard Time", + "Territory": "CC", + "IanaIds": [ + "Indian/Cocos" + ] + }, + { + "WindowsId": "Myanmar Standard Time", + "Territory": "MM", + "IanaIds": [ + "Asia/Rangoon" + ] + }, + { + "WindowsId": "SE Asia Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Bangkok" + ] + }, + { + "WindowsId": "SE Asia Standard Time", + "Territory": "AQ", + "IanaIds": [ + "Antarctica/Davis" + ] + }, + { + "WindowsId": "SE Asia Standard Time", + "Territory": "CX", + "IanaIds": [ + "Indian/Christmas" + ] + }, + { + "WindowsId": "SE Asia Standard Time", + "Territory": "ID", + "IanaIds": [ + "Asia/Jakarta", + "Asia/Pontianak" + ] + }, + { + "WindowsId": "SE Asia Standard Time", + "Territory": "KH", + "IanaIds": [ + "Asia/Phnom_Penh" + ] + }, + { + "WindowsId": "SE Asia Standard Time", + "Territory": "LA", + "IanaIds": [ + "Asia/Vientiane" + ] + }, + { + "WindowsId": "SE Asia Standard Time", + "Territory": "TH", + "IanaIds": [ + "Asia/Bangkok" + ] + }, + { + "WindowsId": "SE Asia Standard Time", + "Territory": "VN", + "IanaIds": [ + "Asia/Saigon" + ] + }, + { + "WindowsId": "SE Asia Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-7" + ] + }, + { + "WindowsId": "Altai Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Barnaul" + ] + }, + { + "WindowsId": "Altai Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Barnaul" + ] + }, + { + "WindowsId": "W. Mongolia Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Hovd" + ] + }, + { + "WindowsId": "W. Mongolia Standard Time", + "Territory": "MN", + "IanaIds": [ + "Asia/Hovd" + ] + }, + { + "WindowsId": "North Asia Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Krasnoyarsk" + ] + }, + { + "WindowsId": "North Asia Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Krasnoyarsk", + "Asia/Novokuznetsk" + ] + }, + { + "WindowsId": "N. Central Asia Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Novosibirsk" + ] + }, + { + "WindowsId": "N. Central Asia Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Novosibirsk" + ] + }, + { + "WindowsId": "Tomsk Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Tomsk" + ] + }, + { + "WindowsId": "Tomsk Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Tomsk" + ] + }, + { + "WindowsId": "China Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Shanghai" + ] + }, + { + "WindowsId": "China Standard Time", + "Territory": "CN", + "IanaIds": [ + "Asia/Shanghai" + ] + }, + { + "WindowsId": "China Standard Time", + "Territory": "HK", + "IanaIds": [ + "Asia/Hong_Kong" + ] + }, + { + "WindowsId": "China Standard Time", + "Territory": "MO", + "IanaIds": [ + "Asia/Macau" + ] + }, + { + "WindowsId": "North Asia East Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Irkutsk" + ] + }, + { + "WindowsId": "North Asia East Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Irkutsk" + ] + }, + { + "WindowsId": "Singapore Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Singapore" + ] + }, + { + "WindowsId": "Singapore Standard Time", + "Territory": "BN", + "IanaIds": [ + "Asia/Brunei" + ] + }, + { + "WindowsId": "Singapore Standard Time", + "Territory": "ID", + "IanaIds": [ + "Asia/Makassar" + ] + }, + { + "WindowsId": "Singapore Standard Time", + "Territory": "MY", + "IanaIds": [ + "Asia/Kuala_Lumpur", + "Asia/Kuching" + ] + }, + { + "WindowsId": "Singapore Standard Time", + "Territory": "PH", + "IanaIds": [ + "Asia/Manila" + ] + }, + { + "WindowsId": "Singapore Standard Time", + "Territory": "SG", + "IanaIds": [ + "Asia/Singapore" + ] + }, + { + "WindowsId": "Singapore Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-8" + ] + }, + { + "WindowsId": "W. Australia Standard Time", + "Territory": "001", + "IanaIds": [ + "Australia/Perth" + ] + }, + { + "WindowsId": "W. Australia Standard Time", + "Territory": "AU", + "IanaIds": [ + "Australia/Perth" + ] + }, + { + "WindowsId": "Taipei Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Taipei" + ] + }, + { + "WindowsId": "Taipei Standard Time", + "Territory": "TW", + "IanaIds": [ + "Asia/Taipei" + ] + }, + { + "WindowsId": "Ulaanbaatar Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Ulaanbaatar" + ] + }, + { + "WindowsId": "Ulaanbaatar Standard Time", + "Territory": "MN", + "IanaIds": [ + "Asia/Ulaanbaatar", + "Asia/Choibalsan" + ] + }, + { + "WindowsId": "North Korea Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Pyongyang" + ] + }, + { + "WindowsId": "North Korea Standard Time", + "Territory": "KP", + "IanaIds": [ + "Asia/Pyongyang" + ] + }, + { + "WindowsId": "Aus Central W. Standard Time", + "Territory": "001", + "IanaIds": [ + "Australia/Eucla" + ] + }, + { + "WindowsId": "Aus Central W. Standard Time", + "Territory": "AU", + "IanaIds": [ + "Australia/Eucla" + ] + }, + { + "WindowsId": "Transbaikal Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Chita" + ] + }, + { + "WindowsId": "Transbaikal Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Chita" + ] + }, + { + "WindowsId": "Tokyo Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Tokyo" + ] + }, + { + "WindowsId": "Tokyo Standard Time", + "Territory": "ID", + "IanaIds": [ + "Asia/Jayapura" + ] + }, + { + "WindowsId": "Tokyo Standard Time", + "Territory": "JP", + "IanaIds": [ + "Asia/Tokyo" + ] + }, + { + "WindowsId": "Tokyo Standard Time", + "Territory": "PW", + "IanaIds": [ + "Pacific/Palau" + ] + }, + { + "WindowsId": "Tokyo Standard Time", + "Territory": "TL", + "IanaIds": [ + "Asia/Dili" + ] + }, + { + "WindowsId": "Tokyo Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-9" + ] + }, + { + "WindowsId": "Korea Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Seoul" + ] + }, + { + "WindowsId": "Korea Standard Time", + "Territory": "KR", + "IanaIds": [ + "Asia/Seoul" + ] + }, + { + "WindowsId": "Yakutsk Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Yakutsk" + ] + }, + { + "WindowsId": "Yakutsk Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Yakutsk", + "Asia/Khandyga" + ] + }, + { + "WindowsId": "Cen. Australia Standard Time", + "Territory": "001", + "IanaIds": [ + "Australia/Adelaide" + ] + }, + { + "WindowsId": "Cen. Australia Standard Time", + "Territory": "AU", + "IanaIds": [ + "Australia/Adelaide", + "Australia/Broken_Hill" + ] + }, + { + "WindowsId": "AUS Central Standard Time", + "Territory": "001", + "IanaIds": [ + "Australia/Darwin" + ] + }, + { + "WindowsId": "AUS Central Standard Time", + "Territory": "AU", + "IanaIds": [ + "Australia/Darwin" + ] + }, + { + "WindowsId": "E. Australia Standard Time", + "Territory": "001", + "IanaIds": [ + "Australia/Brisbane" + ] + }, + { + "WindowsId": "E. Australia Standard Time", + "Territory": "AU", + "IanaIds": [ + "Australia/Brisbane", + "Australia/Lindeman" + ] + }, + { + "WindowsId": "AUS Eastern Standard Time", + "Territory": "001", + "IanaIds": [ + "Australia/Sydney" + ] + }, + { + "WindowsId": "AUS Eastern Standard Time", + "Territory": "AU", + "IanaIds": [ + "Australia/Sydney", + "Australia/Melbourne" + ] + }, + { + "WindowsId": "West Pacific Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Port_Moresby" + ] + }, + { + "WindowsId": "West Pacific Standard Time", + "Territory": "AQ", + "IanaIds": [ + "Antarctica/DumontDUrville" + ] + }, + { + "WindowsId": "West Pacific Standard Time", + "Territory": "FM", + "IanaIds": [ + "Pacific/Truk" + ] + }, + { + "WindowsId": "West Pacific Standard Time", + "Territory": "GU", + "IanaIds": [ + "Pacific/Guam" + ] + }, + { + "WindowsId": "West Pacific Standard Time", + "Territory": "MP", + "IanaIds": [ + "Pacific/Saipan" + ] + }, + { + "WindowsId": "West Pacific Standard Time", + "Territory": "PG", + "IanaIds": [ + "Pacific/Port_Moresby" + ] + }, + { + "WindowsId": "West Pacific Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-10" + ] + }, + { + "WindowsId": "Tasmania Standard Time", + "Territory": "001", + "IanaIds": [ + "Australia/Hobart" + ] + }, + { + "WindowsId": "Tasmania Standard Time", + "Territory": "AU", + "IanaIds": [ + "Australia/Hobart", + "Australia/Currie" + ] + }, + { + "WindowsId": "Vladivostok Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Vladivostok" + ] + }, + { + "WindowsId": "Vladivostok Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Vladivostok", + "Asia/Ust-Nera" + ] + }, + { + "WindowsId": "Lord Howe Standard Time", + "Territory": "001", + "IanaIds": [ + "Australia/Lord_Howe" + ] + }, + { + "WindowsId": "Lord Howe Standard Time", + "Territory": "AU", + "IanaIds": [ + "Australia/Lord_Howe" + ] + }, + { + "WindowsId": "Bougainville Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Bougainville" + ] + }, + { + "WindowsId": "Bougainville Standard Time", + "Territory": "PG", + "IanaIds": [ + "Pacific/Bougainville" + ] + }, + { + "WindowsId": "Russia Time Zone 10", + "Territory": "001", + "IanaIds": [ + "Asia/Srednekolymsk" + ] + }, + { + "WindowsId": "Russia Time Zone 10", + "Territory": "RU", + "IanaIds": [ + "Asia/Srednekolymsk" + ] + }, + { + "WindowsId": "Magadan Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Magadan" + ] + }, + { + "WindowsId": "Magadan Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Magadan" + ] + }, + { + "WindowsId": "Norfolk Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Norfolk" + ] + }, + { + "WindowsId": "Norfolk Standard Time", + "Territory": "NF", + "IanaIds": [ + "Pacific/Norfolk" + ] + }, + { + "WindowsId": "Sakhalin Standard Time", + "Territory": "001", + "IanaIds": [ + "Asia/Sakhalin" + ] + }, + { + "WindowsId": "Sakhalin Standard Time", + "Territory": "RU", + "IanaIds": [ + "Asia/Sakhalin" + ] + }, + { + "WindowsId": "Central Pacific Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Guadalcanal" + ] + }, + { + "WindowsId": "Central Pacific Standard Time", + "Territory": "AQ", + "IanaIds": [ + "Antarctica/Casey" + ] + }, + { + "WindowsId": "Central Pacific Standard Time", + "Territory": "AU", + "IanaIds": [ + "Antarctica/Macquarie" + ] + }, + { + "WindowsId": "Central Pacific Standard Time", + "Territory": "FM", + "IanaIds": [ + "Pacific/Ponape", + "Pacific/Kosrae" + ] + }, + { + "WindowsId": "Central Pacific Standard Time", + "Territory": "NC", + "IanaIds": [ + "Pacific/Noumea" + ] + }, + { + "WindowsId": "Central Pacific Standard Time", + "Territory": "SB", + "IanaIds": [ + "Pacific/Guadalcanal" + ] + }, + { + "WindowsId": "Central Pacific Standard Time", + "Territory": "VU", + "IanaIds": [ + "Pacific/Efate" + ] + }, + { + "WindowsId": "Central Pacific Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-11" + ] + }, + { + "WindowsId": "Russia Time Zone 11", + "Territory": "001", + "IanaIds": [ + "Asia/Kamchatka" + ] + }, + { + "WindowsId": "Russia Time Zone 11", + "Territory": "RU", + "IanaIds": [ + "Asia/Kamchatka", + "Asia/Anadyr" + ] + }, + { + "WindowsId": "New Zealand Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Auckland" + ] + }, + { + "WindowsId": "New Zealand Standard Time", + "Territory": "AQ", + "IanaIds": [ + "Antarctica/McMurdo" + ] + }, + { + "WindowsId": "New Zealand Standard Time", + "Territory": "NZ", + "IanaIds": [ + "Pacific/Auckland" + ] + }, + { + "WindowsId": "UTC+12", + "Territory": "001", + "IanaIds": [ + "Etc/GMT-12" + ] + }, + { + "WindowsId": "UTC+12", + "Territory": "KI", + "IanaIds": [ + "Pacific/Tarawa" + ] + }, + { + "WindowsId": "UTC+12", + "Territory": "MH", + "IanaIds": [ + "Pacific/Majuro", + "Pacific/Kwajalein" + ] + }, + { + "WindowsId": "UTC+12", + "Territory": "NR", + "IanaIds": [ + "Pacific/Nauru" + ] + }, + { + "WindowsId": "UTC+12", + "Territory": "TV", + "IanaIds": [ + "Pacific/Funafuti" + ] + }, + { + "WindowsId": "UTC+12", + "Territory": "UM", + "IanaIds": [ + "Pacific/Wake" + ] + }, + { + "WindowsId": "UTC+12", + "Territory": "WF", + "IanaIds": [ + "Pacific/Wallis" + ] + }, + { + "WindowsId": "UTC+12", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-12" + ] + }, + { + "WindowsId": "Fiji Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Fiji" + ] + }, + { + "WindowsId": "Fiji Standard Time", + "Territory": "FJ", + "IanaIds": [ + "Pacific/Fiji" + ] + }, + { + "WindowsId": "Chatham Islands Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Chatham" + ] + }, + { + "WindowsId": "Chatham Islands Standard Time", + "Territory": "NZ", + "IanaIds": [ + "Pacific/Chatham" + ] + }, + { + "WindowsId": "UTC+13", + "Territory": "001", + "IanaIds": [ + "Etc/GMT-13" + ] + }, + { + "WindowsId": "UTC+13", + "Territory": "KI", + "IanaIds": [ + "Pacific/Enderbury" + ] + }, + { + "WindowsId": "UTC+13", + "Territory": "TK", + "IanaIds": [ + "Pacific/Fakaofo" + ] + }, + { + "WindowsId": "UTC+13", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-13" + ] + }, + { + "WindowsId": "Tonga Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Tongatapu" + ] + }, + { + "WindowsId": "Tonga Standard Time", + "Territory": "TO", + "IanaIds": [ + "Pacific/Tongatapu" + ] + }, + { + "WindowsId": "Samoa Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Apia" + ] + }, + { + "WindowsId": "Samoa Standard Time", + "Territory": "WS", + "IanaIds": [ + "Pacific/Apia" + ] + }, + { + "WindowsId": "Line Islands Standard Time", + "Territory": "001", + "IanaIds": [ + "Pacific/Kiritimati" + ] + }, + { + "WindowsId": "Line Islands Standard Time", + "Territory": "KI", + "IanaIds": [ + "Pacific/Kiritimati" + ] + }, + { + "WindowsId": "Line Islands Standard Time", + "Territory": "ZZ", + "IanaIds": [ + "Etc/GMT-14" + ] + } + ] + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneIANAVersion.json b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneIANAVersion.json new file mode 100644 index 000000000000..9c1d1d21cd58 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneIANAVersion.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "version": "2017b" + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneWindowsToIANA.json b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneWindowsToIANA.json new file mode 100644 index 000000000000..7bdd480909fb --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/examples/GetTimezoneWindowsToIANA.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "format": "json", + "api-version": "1.0", + "query": "pacific standard time", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": [ + { + "id": "America/Los_Angeles", + "isAlias": false, + "hasZone1970Location": true + } + ] + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/timezone.json b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/timezone.json new file mode 100644 index 000000000000..3ba00c93f71f --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Timezone/preview/1.0/timezone.json @@ -0,0 +1,1009 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Time Zone Service", + "version": "1.0", + "description": "Azure Maps Time Zone REST APIs" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "TimezoneAcceptLanguage": { + "name": "Accept-Language", + "in": "header", + "description": "Specifies the language code in which the timezone names should be returned. If no language code is provided, the response will be in \"EN\". Please refer to [Supported Languages](https://docs.microsoft.com/en-us/azure/azure-maps/supported-languages) for details.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TimezoneOptions": { + "name": "options", + "in": "query", + "description": "Alternatively, use alias \"o\". Options available for types of information returned in the result.", + "required": false, + "type": "string", + "enum": [ + "none", + "zoneInfo", + "transitions", + "all" + ], + "x-ms-enum": { + "name": "TimezoneOptions", + "modelAsString": false, + "values": [ + { + "value": "none", + "description": "Do not include zoneinfo or transitions in the result." + }, + { + "value": "zoneInfo", + "description": "Include additional time zone info in the result." + }, + { + "value": "transitions", + "description": "Include transition information in the result (The number of transitions is currently capped at 250)." + }, + { + "value": "all", + "description": "Include both zoneinfo and transitions in the result." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "TimezoneTimeStamp": { + "name": "timeStamp", + "in": "query", + "description": "Alternatively, use alias \"stamp\", or \"s\". Reference time, if omitted, the API will use the machine time serving the request.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "format": "date-time" + }, + "TimezoneTransitionsFrom": { + "name": "transitionsFrom", + "in": "query", + "description": "Alternatively, use alias \"tf\". The start date from which daylight savings time (DST) transitions are requested, only applies when \"options\" = all or \"options\" = transitions.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "format": "date-time" + }, + "TimezoneTransitionsYears": { + "name": "transitionsYears", + "in": "query", + "description": "Alternatively, use alias \"ty\". The number of years from \"transitionsFrom\" for which DST transitions are requested, only applies when \"options\" = all or \"options\" = transitions.", + "required": false, + "type": "integer", + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/timezone/byId/{format}": { + "get": { + "x-publish": true, + "description": "__Time Zone by Id__\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThis API returns current, historical, and future time zone information for the specified IANA time zone ID.", + "operationId": "Timezone_GetTimezoneByID", + "x-ms-examples": { + "GetTimezoneByID": { + "$ref": "./examples/GetTimezoneByID.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TimezoneAcceptLanguage" + }, + { + "$ref": "#/parameters/TimezoneOptions" + }, + { + "$ref": "#/parameters/TimezoneTimeStamp" + }, + { + "$ref": "#/parameters/TimezoneTransitionsFrom" + }, + { + "$ref": "#/parameters/TimezoneTransitionsYears" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "in": "query", + "description": "The IANA time zone ID.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TimezoneByIdResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/timezone/byCoordinates/{format}": { + "get": { + "x-publish": true, + "description": "__Time Zone by Coordinates__\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThis API returns current, historical, and future time zone information for a specified latitude-longitude pair. In addition, the API provides sunset and sunrise times for a given location.", + "operationId": "Timezone_GetTimezoneByCoordinates", + "x-ms-examples": { + "GetTimezoneByCoordinates": { + "$ref": "./examples/GetTimezoneByCoordinates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TimezoneAcceptLanguage" + }, + { + "$ref": "#/parameters/TimezoneOptions" + }, + { + "$ref": "#/parameters/TimezoneTimeStamp" + }, + { + "$ref": "#/parameters/TimezoneTransitionsFrom" + }, + { + "$ref": "#/parameters/TimezoneTransitionsYears" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "in": "query", + "description": "Coordinates of the point for which time zone information is requested. The applicable query is specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TimezoneByCoordinatesResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/timezone/enumWindows/{format}": { + "get": { + "x-publish": true, + "description": "__Enumerate Windows Time Zones__\n\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThis API returns a full list of Windows Time Zone IDs.", + "operationId": "Timezone_GetTimezoneEnumWindows", + "x-ms-examples": { + "GetTimezoneEnumWindows": { + "$ref": "./examples/GetTimezoneEnumWindows.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TimezoneEnumWindowsResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/timezone/enumIana/{format}": { + "get": { + "x-publish": true, + "description": "__Enumerate IANA Time Zones__\n\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThis API returns a full list of IANA time zone IDs. Updates to the IANA service will be reflected in the system within one day.", + "operationId": "Timezone_GetTimezoneEnumIANA", + "x-ms-examples": { + "GetTimezoneEnumIANA": { + "$ref": "./examples/GetTimezoneEnumIANA.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TimezoneEnumIanaResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/timezone/ianaVersion/{format}": { + "get": { + "x-publish": true, + "description": "__Time Zone IANA Version__\n\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThis API returns the current IANA version number.", + "operationId": "Timezone_GetTimezoneIANAVersion", + "x-ms-examples": { + "GetTimezoneIANAVersion": { + "$ref": "./examples/GetTimezoneIANAVersion.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TimezoneIanaVersionResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/timezone/windowsToIana/{format}": { + "get": { + "x-publish": true, + "description": "__Windows to IANA Time Zone__\n\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nThis API returns a corresponding IANA ID, given a valid Windows Time Zone ID. Multiple IANA IDs may be returned for a single Windows ID. It is possible to narrow these results by adding an optional territory parameter.", + "operationId": "Timezone_GetTimezoneWindowsToIANA", + "x-ms-examples": { + "GetTimezoneWindowsToIANA": { + "$ref": "./examples/GetTimezoneWindowsToIANA.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "in": "query", + "description": "The Windows time zone ID.", + "required": true, + "type": "string" + }, + { + "name": "territory", + "in": "query", + "description": "Windows Time Zone territory code.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TimezoneWindowToIanaResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "Country": { + "type": "object", + "description": "A country record.", + "properties": { + "Name": { + "description": "Country Name", + "type": "string", + "readOnly": true + }, + "Code": { + "description": "ISO-3166 2-letter country code for the country.", + "type": "string", + "readOnly": true + } + } + }, + "TimeTransition": { + "type": "object", + "readOnly": true, + "properties": { + "Tag": { + "description": "Tag property", + "type": "string", + "readOnly": true + }, + "StandardOffset": { + "description": "StandardOffset property", + "type": "string", + "readOnly": true + }, + "DaylightSavings": { + "description": "DaylightSavings property", + "type": "string", + "readOnly": true + }, + "UtcStart": { + "description": "Start date, start time for this transition period", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "UtcEnd": { + "description": "End date, end time for this transition period", + "type": "string", + "readOnly": true, + "format": "date-time" + } + } + }, + "TimezoneByIdResult": { + "description": "This object is returned from a successful Timezone By ID call", + "type": "object", + "properties": { + "Version": { + "description": "Version property", + "type": "string", + "readOnly": true + }, + "ReferenceUtcTimestamp": { + "description": "Reference Utc Timestamp property", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "TimeZones": { + "$ref": "#/definitions/TimeZonesById" + } + } + }, + "TimezoneByCoordinatesResult": { + "description": "This object is returned from a successful Timezone By Coordinates call", + "type": "object", + "properties": { + "Version": { + "description": "Version property", + "type": "string", + "readOnly": true + }, + "ReferenceUtcTimestamp": { + "description": "Reference Utc Timestamp property", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "TimeZones": { + "$ref": "#/definitions/TimeZonesByCoordinates" + } + } + }, + "TimezoneEnumWindowsResult": { + "description": "This object is returned from a successful Timezone Enum Windows call", + "type": "array", + "items": { + "$ref": "#/definitions/TimezoneEnumWindow" + } + }, + "TimezoneEnumWindow": { + "type": "object", + "properties": { + "WindowsId": { + "description": "Windows Id property", + "type": "string", + "readOnly": true + }, + "Territory": { + "description": "Territory property", + "type": "string", + "readOnly": true + }, + "IanaIds": { + "description": "IanaIds array", + "type": "array", + "items": { + "type": "string", + "readOnly": true + } + } + } + }, + "TimezoneEnumIanaResult": { + "description": "This object is returned from a successful Timezone Enum IANA call", + "type": "array", + "items": { + "$ref": "#/definitions/IanaId" + } + }, + "TimezoneIanaVersionResult": { + "description": "This object is returned from a successful Timezone IANA Version call", + "type": "object", + "properties": { + "version": { + "description": "Version property", + "type": "string", + "readOnly": true + } + } + }, + "TimezoneWindowToIanaResult": { + "description": "This object is returned from a successful Timezone Windows To IANA call", + "type": "array", + "items": { + "$ref": "#/definitions/IanaId" + } + }, + "IanaId": { + "type": "object", + "properties": { + "id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "isAlias": { + "description": "IsAlias property", + "type": "boolean", + "readOnly": true + }, + "aliasOf": { + "description": "AliasOf property", + "type": "string", + "readOnly": true + }, + "hasZone1970Location": { + "description": "HasZone1970Location property", + "type": "boolean", + "readOnly": true + } + } + }, + "TimeZonesById": { + "description": "TimeZoneById array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TimezoneById" + } + }, + "TimeZonesByCoordinates": { + "description": "TimeZoneByCoordinates array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TimeZoneByCoordinates" + } + }, + "TimezoneById": { + "type": "object", + "properties": { + "Id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "Aliases": { + "description": "An array of time zone ID aliases.  Only returned when [options]=*zoneinfo* or *all*.\n\nNote: may be null.", + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true + } + }, + "Countries": { + "description": "An array of country records. Only returned when [options]=*zoneinfo* or *all*.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Country" + } + }, + "Names": { + "$ref": "#/definitions/Names" + }, + "ReferenceTime": { + "$ref": "#/definitions/ReferenceTimeById" + }, + "RepresentativePoint": { + "$ref": "#/definitions/RepresentativePoint" + }, + "TimeTransitions": { + "description": "Time zone DST transitions from [transitionsFrom] until timestamp + 1 year.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TimeTransition" + } + } + } + }, + "TimeZoneByCoordinates": { + "type": "object", + "properties": { + "Id": { + "description": "Id property", + "type": "string", + "readOnly": true + }, + "Aliases": { + "description": "An array of time zone ID aliases.  Only returned when [options]=*zoneinfo* or *all*.\n\nNote: may be null.", + "type": "array", + "readOnly": true, + "items": { + "type": "string", + "readOnly": true + } + }, + "Countries": { + "description": "An array of country records. Only returned when [options]=*zoneinfo* or *all*.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Country" + } + }, + "Names": { + "$ref": "#/definitions/Names" + }, + "ReferenceTime": { + "$ref": "#/definitions/ReferenceTimeByCoordinates" + }, + "RepresentativePoint": { + "$ref": "#/definitions/RepresentativePoint" + }, + "TimeTransitions": { + "description": "Time zone DST transitions from [transitionsFrom] until timestamp + 1 year.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TimeTransition" + } + } + } + }, + "Names": { + "type": "object", + "description": "Timezone names object.", + "properties": { + "ISO6391LanguageCode": { + "description": "The ISO 639-1 language code of the Names", + "type": "string", + "readOnly": true + }, + "Generic": { + "description": "Generic Name", + "type": "string", + "readOnly": true + }, + "Standard": { + "description": "Standard Name", + "type": "string", + "readOnly": true + }, + "Daylight": { + "description": "Daylight Name", + "type": "string", + "readOnly": true + } + } + }, + "ReferenceTimeById": { + "description": "Details in effect at the local time.", + "type": "object", + "readOnly": true, + "properties": { + "Tag": { + "description": "Time zone name in effect at the reference timestamp (i.e. PST or PDT depending whether Daylight Savings Time is in effect).", + "type": "string", + "readOnly": true + }, + "StandardOffset": { + "description": "UTC offset in effect at the `ReferenceUTCTimestamp`.", + "type": "string", + "readOnly": true + }, + "DaylightSavings": { + "description": "Time saving in minutes in effect at the `ReferenceUTCTimestamp`.", + "type": "string", + "readOnly": true + }, + "WallTime": { + "description": "Current wall time at the given time zone as shown in the `Tag` property.", + "type": "string", + "readOnly": true + }, + "PosixTzValidYear": { + "description": "The year this POSIX string is valid for. Note: A POSIX string will only be valid in the given year.", + "type": "integer", + "readOnly": true + }, + "PosixTz": { + "description": "POSIX string used to set the time zone environment variable.", + "type": "string", + "readOnly": true + } + } + }, + "ReferenceTimeByCoordinates": { + "description": "Details in effect at the local time.", + "type": "object", + "readOnly": true, + "properties": { + "Tag": { + "description": "Time zone name in effect at the reference timestamp (i.e. PST or PDT depending whether Daylight Savings Time is in effect).", + "type": "string", + "readOnly": true + }, + "StandardOffset": { + "description": "UTC offset in effect at the `ReferenceUTCTimestamp`.", + "type": "string", + "readOnly": true + }, + "DaylightSavings": { + "description": "Time saving in minutes in effect at the `ReferenceUTCTimestamp`.", + "type": "string", + "readOnly": true + }, + "WallTime": { + "description": "Current wall time at the given time zone as shown in the `Tag` property.", + "type": "string", + "readOnly": true + }, + "PosixTzValidYear": { + "description": "The year this POSIX string is valid for. Note: A POSIX string will only be valid in the given year.", + "type": "integer", + "readOnly": true + }, + "PosixTz": { + "description": "POSIX string used to set the time zone environment variable.", + "type": "string", + "readOnly": true + }, + "Sunrise": { + "description": "Sunrise at the given time zone as shown in the `Tag` property.", + "type": "string", + "readOnly": true + }, + "Sunset": { + "description": "Sunset at the given time zone as shown in the `Tag` property.", + "type": "string", + "readOnly": true + } + } + }, + "RepresentativePoint": { + "description": "Representative point property", + "type": "object", + "readOnly": true, + "properties": { + "Latitude": { + "description": "Latitude property", + "type": "number", + "readOnly": true + }, + "Longitude": { + "description": "Longitude property", + "type": "number", + "readOnly": true + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficFlowSegment.json b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficFlowSegment.json new file mode 100644 index 000000000000..260df3e59fd3 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficFlowSegment.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "style": "absolute", + "zoom": 10, + "query": "52.41072,4.84239", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "flowSegmentData": { + "frc": "FRC3", + "currentSpeed": 79, + "freeFlowSpeed": 79, + "currentTravelTime": 33, + "freeFlowTravelTime": 33, + "confidence": 0.5, + "coordinates": { + "coordinate": [ + { + "latitude": 52.404648, + "longitude": 4.8442388 + }, + { + "latitude": 52.408447, + "longitude": 4.8357286 + } + ] + }, + "openlr": null, + "@version": "1.0.53-mascoma" + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficFlowTile.json b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficFlowTile.json new file mode 100644 index 000000000000..db22b3435096 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficFlowTile.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "png", + "style": "absolute", + "zoom": 12, + "x": 2044, + "y": 1360, + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": "binary string image" + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentDetail.json b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentDetail.json new file mode 100644 index 000000000000..69024b136001 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentDetail.json @@ -0,0 +1,383 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "style": "s3", + "boundingbox": "6841263.950712,511972.674418,6886056.049288,582676.925582", + "boundingZoom": 11, + "trafficmodelid": "1335294634919", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "tm": { + "@id": "1521671948910", + "poi": [ + { + "id": "europe_HD_NL_TTR116377227776064", + "p": { + "x": 538636.9, + "y": 6842004.5 + }, + "ic": 9, + "ty": 1, + "cs": 0, + "d": "roadworks", + "c": "new roadworks layout", + "f": "Amstelveen/Vinkeveen - N201 (N196)", + "t": "Uithoorn-Centrum (N196)", + "l": 220, + "dl": 14, + "r": "N196" + }, + { + "id": "europe_CLUSTER_11_-34959639", + "p": { + "x": 528668.6, + "y": 6848897.9 + }, + "ic": 8, + "ty": 0, + "cbl": { + "x": 528622.5, + "y": 6848661.2 + }, + "ctr": { + "x": 528714.7, + "y": 6849134.6 + }, + "cs": 2, + "l": 190 + }, + { + "id": "europe_CLUSTER_11_-1540737434", + "p": { + "x": 518277, + "y": 6852206.8 + }, + "ic": 9, + "ty": 1, + "cbl": { + "x": 517421.3, + "y": 6851776.4 + }, + "ctr": { + "x": 519132.8, + "y": 6852637.2 + }, + "cs": 2, + "l": 1620 + }, + { + "id": "europe_CLUSTER_11_-26712906", + "p": { + "x": 529902.2, + "y": 6855622.4 + }, + "ic": 8, + "ty": 0, + "cbl": { + "x": 529524.6, + "y": 6855377.2 + }, + "ctr": { + "x": 530279.9, + "y": 6855867.7 + }, + "cs": 4, + "l": 660 + }, + { + "id": "europe_HD_NL_TTR116367997504816", + "p": { + "x": 568216, + "y": 6851287.6 + }, + "ic": 9, + "ty": 1, + "cs": 0, + "d": "roadworks", + "c": "new roadworks layout", + "f": "Ankeveen (N236)", + "t": "Weesp (N236)", + "l": 2760, + "dl": 73, + "r": "N236" + }, + { + "id": "europe_HD_NL_TTR116367997261488", + "p": { + "x": 561973.7, + "y": 6854259.4 + }, + "ic": 9, + "ty": 3, + "cs": 0, + "d": "roadworks", + "c": "new roadworks layout", + "f": "Weesp (N236)", + "t": "Ankeveen (N236)", + "l": 2650, + "r": "N236" + }, + { + "id": "europe_HD_NL_TTR116331064819392", + "p": { + "x": 571268.5, + "y": 6858435.4 + }, + "ic": 8, + "ty": 4, + "cs": 0, + "d": "closed", + "f": "IJsselmeerweg", + "t": "A6", + "l": 370 + }, + { + "id": "europe_CLUSTER_11_-1442937814", + "p": { + "x": 563934, + "y": 6859271.3 + }, + "ic": 9, + "ty": 1, + "cbl": { + "x": 563726.1, + "y": 6859250.4 + }, + "ctr": { + "x": 564141.9, + "y": 6859292.2 + }, + "cs": 2, + "l": 460 + }, + { + "id": "europe_CLUSTER_11_258400781", + "p": { + "x": 558055.6, + "y": 6861147.1 + }, + "ic": 13, + "ty": 1, + "cbl": { + "x": 557493.3, + "y": 6860514.8 + }, + "ctr": { + "x": 558618, + "y": 6861779.4 + }, + "cs": 3, + "l": 1030 + }, + { + "id": "europe_HD_NL_TTR116100227865681", + "p": { + "x": 542665, + "y": 6861959.7 + }, + "ic": 8, + "ty": 4, + "cs": 0, + "d": "closed", + "f": "Strawinskylaan", + "t": "Matthijs Vermeulenpad", + "l": 110 + }, + { + "id": "europe_CLUSTER_11_1438243625", + "p": { + "x": 545058.7, + "y": 6864571.6 + }, + "ic": 8, + "ty": 0, + "cbl": { + "x": 543779.5, + "y": 6864070.7 + }, + "ctr": { + "x": 546337.8, + "y": 6865072.6 + }, + "cs": 5, + "l": 1590 + }, + { + "id": "europe_HD_NL_TTR116081762316976", + "p": { + "x": 547507.8, + "y": 6866259.3 + }, + "ic": 8, + "ty": 4, + "cs": 0, + "d": "closed", + "f": "Alexanderplein (s113)", + "t": "Stadhouderskade", + "l": 390, + "r": "S100" + }, + { + "id": "europe_CLUSTER_11_691732516", + "p": { + "x": 541448.7, + "y": 6867162.1 + }, + "ic": 8, + "ty": 0, + "cbl": { + "x": 541160.1, + "y": 6866710.7 + }, + "ctr": { + "x": 541737.2, + "y": 6867613.5 + }, + "cs": 4, + "l": 430 + }, + { + "id": "europe_CLUSTER_11_1582351486", + "p": { + "x": 534709.6, + "y": 6865174.7 + }, + "ic": 8, + "ty": 0, + "cbl": { + "x": 534562.2, + "y": 6865025.3 + }, + "ctr": { + "x": 534856.9, + "y": 6865324.2 + }, + "cs": 2, + "l": 380 + }, + { + "id": "europe_CLUSTER_11_-2070222267", + "p": { + "x": 536813.1, + "y": 6868188.3 + }, + "ic": 8, + "ty": 0, + "cbl": { + "x": 536191.1, + "y": 6867699.7 + }, + "ctr": { + "x": 537435.1, + "y": 6868677 + }, + "cs": 7, + "l": 1380 + }, + { + "id": "europe_CLUSTER_11_-496866890", + "p": { + "x": 516025.5, + "y": 6871606.3 + }, + "ic": 8, + "ty": 0, + "cbl": { + "x": 514115.1, + "y": 6870216.9 + }, + "ctr": { + "x": 517935.9, + "y": 6872995.7 + }, + "cs": 7, + "l": 1510 + }, + { + "id": "europe_HD_NL_TTR115675492352160", + "p": { + "x": 517835.3, + "y": 6883216.3 + }, + "ic": 8, + "ty": 4, + "cs": 0, + "d": "closed", + "f": "Amsterdamseweg", + "t": "A22", + "l": 710 + }, + { + "id": "europe_CLUSTER_11_834920993", + "p": { + "x": 543803.8, + "y": 6875659.8 + }, + "ic": 8, + "ty": 0, + "cbl": { + "x": 543474.7, + "y": 6875602.7 + }, + "ctr": { + "x": 544133, + "y": 6875716.9 + }, + "cs": 2, + "l": 760 + } + ] + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentTile.json b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentTile.json new file mode 100644 index 000000000000..d191b8fedcb3 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentTile.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "png", + "style": "night", + "zoom": 10, + "x": 175, + "y": 408, + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": {} + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentViewport.json b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentViewport.json new file mode 100644 index 000000000000..42994892b5dd --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/examples/GetTrafficIncidentViewport.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "boundingbox": "-939584.4813015489,-23954526.723651607,14675583.153020501,25043442.895825107", + "boundingzoom": 2, + "overviewbox": "-939584.4813018347,-23954526.723651607,14675583.153020501,25043442.8958229083", + "overviewzoom": 2, + "copyright": true, + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "viewpResp": { + "trafficState": { + "@trafficAge": 18895, + "@trafficModelId": "1504808593298" + }, + "copyrightIds": "© 2017 GeoSmart^© 2017 TomTom^© 2017 Whereis", + "@version": "1.0.51-mascoma", + "@maps": "europe,taiwan,latam,northamerica,israel,middleeast,iraq,guam,australia,newzealand,india,africa,world,southeastasia" + } + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/traffic.json b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/traffic.json new file mode 100644 index 000000000000..5bf252cbddc8 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Traffic/preview/1.0/traffic.json @@ -0,0 +1,1154 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Traffic Service", + "version": "1.0", + "description": "Azure Maps Traffic REST APIs" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "202": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + }, + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "TextFormat": { + "name": "format", + "description": "Desired format of the response. Value can be either _json_ or _xml_.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json", + "xml" + ], + "x-ms-enum": { + "name": "TextFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + }, + { + "value": "xml", + "description": "[The Extensible Markup Language](https://www.w3.org/TR/xml/)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "RasterTileFormat": { + "name": "format", + "description": "Desired format of the response. Possible value: png.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "png" + ], + "x-ms-enum": { + "name": "RasterTileFormat", + "modelAsString": false, + "values": [ + { + "value": "png", + "description": "An image in the png format. Supports zoom levels 0 through 18." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "TileFormat": { + "name": "format", + "description": "Desired format of the response. Possible values are png & pbf.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "png", + "pbf" + ], + "x-ms-enum": { + "name": "TileFormat", + "modelAsString": false, + "values": [ + { + "value": "png", + "description": "An image in the png format. Supports zoom levels 0 through 18." + }, + { + "value": "pbf", + "description": "Vector graphic in the pbf format. Supports zoom levels 0 through 22." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "RasterZoom": { + "name": "zoom", + "in": "query", + "description": "Zoom level for the desired tile. Zoom value must be in the range: 0-22 (inclusive).\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "RasterVectorZoom": { + "name": "zoom", + "in": "query", + "description": "Zoom level for the desired tile. For _raster_ tiles, value must be in the range: 0-22 (inclusive). For _vector_ tiles, value must be in the range: 0-22 (inclusive).\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "xTileIndex": { + "name": "x", + "x-ms-client-name": "xTileIndex", + "in": "query", + "description": "X coordinate of the tile on zoom grid. Value must be in the range [0, 2`zoom` -1].\n\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "yTileIndex": { + "name": "y", + "x-ms-client-name": "yTileIndex", + "in": "query", + "description": "Y coordinate of the tile on zoom grid. Value must be in the range [0, 2`zoom` -1].\n\nPlease see [Zoom Levels and Tile Grid](https://docs.microsoft.com/en-us/azure/location-based-services/zoom-levels-and-tile-grid) for details.", + "required": true, + "type": "integer", + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/traffic/flow/tile/{format}": { + "get": { + "x-publish": true, + "description": "__Traffic Flow Tile__\n\n\n**Applies to**: S0 and S1 pricing tiers.\n\nThe Azure Flow Tile API serves 256 x 256 pixel tiles showing traffic flow. All tiles use the same grid system. Because the traffic tiles use transparent images, they can be layered on top of map tiles to create a compound display. The Flow tiles use colors to indicate either the speed of traffic on different road segments, or the difference between that speed and the free-flow speed on the road segment in question.", + "operationId": "Traffic_GetTrafficFlowTile", + "x-ms-examples": { + "GetTrafficFlowTile": { + "$ref": "./examples/GetTrafficFlowTile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TileFormat" + }, + { + "name": "style", + "in": "query", + "description": "

The style to be used to render the tile.

  • Absolute which returns colors reflecting the absolute speed measured.
  • Relative to which returns the speed relative to free-flow.
  • Relative-delay displays when relative speeds are different from the free-flow speeds.
", + "required": true, + "type": "string", + "enum": [ + "absolute", + "relative", + "relative-delay", + "reduced-sensitivity" + ], + "x-ms-enum": { + "name": "TrafficFlowTileStyle", + "modelAsString": false, + "values": [ + { + "value": "absolute", + "description": "Colors will reflect the absolute speed measured." + }, + { + "value": "relative", + "description": "Colors will reflect the speed relative to free-flow." + }, + { + "value": "relative-delay", + "description": "Displays relative colors only where they are different from the freeflow speeds." + }, + { + "value": "reduced-sensitivity", + "description": "Displays relative colors but a larger difference from freeflow is required for segments to change the color. This mode only valid when format is png." + } + ] + } + }, + { + "$ref": "#/parameters/RasterVectorZoom" + }, + { + "$ref": "#/parameters/xTileIndex" + }, + { + "$ref": "#/parameters/yTileIndex" + }, + { + "name": "thickness", + "in": "query", + "description": "The value of the width of the line representing traffic. This value is a multiplier and the accepted values range from 1 - 20. The default value is 10. This parameter is not valid when format is pbf.", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 20, + "default": 10 + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TrafficFlowTileResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/traffic/flow/segment/{format}": { + "get": { + "x-publish": true, + "description": "__Traffic Flow Segment__\n\n\n**Applies to**: S0 and S1 pricing tiers.\n\nThis service provides information about the speeds and travel times of the road fragment closest to the given coordinates. It is designed to work alongside the Flow layer of the Render Service to support clickable flow data visualizations. With this API, the client side can connect any place in the map with flow data on the closest road and present it to the user.", + "operationId": "Traffic_GetTrafficFlowSegment", + "x-ms-examples": { + "GetTrafficFlowSegment": { + "$ref": "./examples/GetTrafficFlowSegment.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "style", + "in": "query", + "description": "The style to be used to render the tile. Valid values are absolute which returns colors reflecting the absolute speed measured, relative which returns the speed relative to free-flow, Relative-delay which displays relative speeds only where they are different from the freeflow speeds", + "required": true, + "type": "string", + "enum": [ + "absolute", + "relative", + "relative-delay" + ], + "x-ms-enum": { + "name": "TrafficFlowSegmentStyle", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/RasterZoom" + }, + { + "name": "query", + "in": "query", + "description": "Coordinates of the point close to the road segment. They have to be comma-separated and calculated using EPSG4326 projection.", + "required": true, + "type": "string" + }, + { + "name": "unit", + "in": "query", + "description": "Unit of speed in KMPH or MPH", + "required": false, + "type": "string", + "default": "KMPH", + "enum": [ + "KMPH", + "MPH" + ], + "x-ms-enum": { + "name": "SpeedUnit", + "modelAsString": false, + "values": [ + { + "value": "KMPH", + "description": "Kilometers Per Hour" + }, + { + "value": "MPH", + "description": "Miles Per Hour" + } + ] + } + }, + { + "name": "thickness", + "in": "query", + "description": "The value of the width of the line representing traffic. This value is a multiplier and the accepted values range from 1 - 20. The default value is 10.", + "required": false, + "type": "integer", + "default": 10, + "minimum": 1, + "maximum": 20 + }, + { + "name": "openLr", + "in": "query", + "description": "Boolean on whether the response should include OpenLR code", + "required": false, + "type": "boolean", + "default": false + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TrafficFlowSegmentResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/traffic/incident/tile/{format}": { + "get": { + "x-publish": true, + "description": "__Traffic Incident Tile__\n\n\n**Applies to**: S0 and S1 pricing tiers.\n\nThis service serves 256 x 256 pixel tiles showing traffic incidents. All tiles use the same grid system. Because the traffic tiles use transparent images, they can be layered on top of map tiles to create a compound display. Traffic tiles render graphics to indicate traffic on the roads in the specified area.", + "operationId": "Traffic_GetTrafficIncidentTile", + "x-ms-examples": { + "GetTrafficIncidentTile": { + "$ref": "./examples/GetTrafficIncidentTile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TileFormat" + }, + { + "name": "style", + "in": "query", + "description": "The style to be used to render the tile. This parameter is not valid when format is pbf.", + "required": true, + "type": "string", + "enum": [ + "s1", + "s2", + "s3", + "night" + ], + "x-ms-enum": { + "name": "TrafficIncidentTileStyle", + "modelAsString": false, + "values": [ + { + "value": "s1", + "description": "Creates traffic lines with colored chevrons indicating severity." + }, + { + "value": "s2", + "description": "Creates plain lines with certain degree of glow." + }, + { + "value": "s3", + "description": "Creates plain lines with certain degree of glow." + }, + { + "value": "night", + "description": "Night style." + } + ] + } + }, + { + "$ref": "#/parameters/RasterVectorZoom" + }, + { + "$ref": "#/parameters/xTileIndex" + }, + { + "$ref": "#/parameters/yTileIndex" + }, + { + "name": "t", + "x-ms-client-name": "trafficState", + "in": "query", + "description": "Reference value for the state of traffic at a particular time, obtained from the Viewport API call, trafficModelId attribute in trafficState field. It is updated every minute, and is valid for two minutes before it times out. Use -1 to get the most recent traffic information. Default: most recent traffic information.", + "required": false, + "type": "string", + "default": "-1" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TrafficIncidentTileResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + }, + "produces": [ + "application/json" + ] + } + }, + "/traffic/incident/detail/{format}": { + "get": { + "x-publish": true, + "description": "__Traffic Incident Detail__ \n\n\n\n**Applies to**: S0 and S1 pricing tiers.\n\nThis API provides information on traffic incidents inside a given bounding box, based on the current Traffic Model ID. The Traffic Model ID is available to grant synchronization of data between calls and API's. The Traffic Model ID is a key value for determining the currency of traffic incidents. It is updated every minute, and is valid for two minutes before it times out. It is used in rendering [incident tiles](https://docs.microsoft.com/en-us/rest/api/maps/traffic/gettrafficincidenttile). It can be obtained from the [Viewport API](https://docs.microsoft.com/en-us/rest/api/maps/traffic/gettrafficincidentviewport).", + "operationId": "Traffic_GetTrafficIncidentDetail", + "x-ms-examples": { + "GetTrafficIncidentDetail": { + "$ref": "./examples/GetTrafficIncidentDetail.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "style", + "in": "query", + "description": "The style that will be used to render the tile in Traffic [Incident Tile API](https://docs.microsoft.com/en-us/rest/api/maps/traffic/gettrafficincidenttile). This will have an effect on the coordinates of traffic incidents in the reply.", + "required": true, + "type": "string", + "enum": [ + "s1", + "s2", + "s3", + "night" + ], + "x-ms-enum": { + "name": "TrafficIncidentDetailStyle", + "modelAsString": false, + "values": [ + { + "value": "s1", + "description": "Creates traffic lines with colored chevrons indicating severity." + }, + { + "value": "s2", + "description": "Creates plain lines with certain degree of glow." + }, + { + "value": "s3", + "description": "Creates plain lines with certain degree of glow." + }, + { + "value": "night", + "description": "Night style." + } + ] + } + }, + { + "name": "boundingbox", + "in": "query", + "description": "The `boundingbox` is represented by two value pairs describing it's corners (first pair for lower left corner and second for upper right). The pairs can either be specified using any of the `projection`'s specified below (e.g., _minY,minX,maxY,maxX_) or by two latitude-longitude pairs (e.g., _minLat,minLon,maxLat,maxLon_).

NOTE: If latitude/longitude pairs are used, then the `projection` parameter must be set to \"EPSG4326\".", + "required": true, + "type": "string" + }, + { + "name": "boundingZoom", + "in": "query", + "description": "Zoom level for desired tile. 0 to 22 for raster tiles, 0 through 22 for vector tiles", + "required": true, + "type": "integer", + "minimum": 0, + "maximum": 22 + }, + { + "name": "trafficmodelid", + "in": "query", + "description": "Number referencing traffic model. This can be obtained from the [Viewport API](https://docs.microsoft.com/en-us/rest/api/maps/traffic/gettrafficincidentviewport). It is updated every minute, and is valid for two minutes before it times out. If the wrong Traffic Model ID is specified, the correct one will be returned by the interface. A value of -1 will always invoke the most recent traffic model", + "required": true, + "type": "string" + }, + { + "name": "language", + "in": "query", + "description": "[ISO 639-1 code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) for the output language. Supported languages are ar, ca, cs, da, de, el, en, en-GB, en-US, es, et, fi, fr, he, hu, id, in*, it, lt, lv, nb, nl, no, pl, pt, ro, ru, sk, sv, th, tr, zh.\n\nPlease refer to [Supported Languages](https://docs.microsoft.com/en-us/azure/azure-maps/supported-languages) for details. When invalid language code is provided response is returned in English. When incident cause or description does not have translation, English description is returned.", + "required": false, + "type": "string" + }, + { + "name": "projection", + "in": "query", + "description": "The projection used to specify the coordinates in the request and response. [EPSG900913](http://docs.openlayers.org/library/spherical_mercator.html) (default) or [EPSG4326](http://spatialreference.org/ref/epsg/4326/)", + "required": false, + "type": "string", + "enum": [ + "EPSG900913", + "EPSG4326" + ] + }, + { + "name": "geometries", + "in": "query", + "description": "The type of vector geometry added to incidents (returned in the element of the response).", + "required": false, + "type": "string", + "enum": [ + "original", + "shifted" + ], + "x-ms-enum": { + "name": "IncidentGeometryType", + "modelAsString": false, + "values": [ + { + "value": "original", + "description": "Places incidents precisely on the road." + }, + { + "value": "shifted", + "description": "Moves the incident slightly (depending on zoom level) to indicate specific road lanes." + } + ] + } + }, + { + "name": "expandCluster", + "in": "query", + "description": "Boolean to indicate whether to list all traffic incidents in a cluster separately", + "required": false, + "type": "boolean", + "default": false + }, + { + "name": "originalPosition", + "in": "query", + "description": "Boolean on whether to return the original position of the incident () as well as the one shifted to the beginning of the traffic tube ()", + "required": false, + "type": "boolean", + "default": false + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TrafficIncidentDetailResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/traffic/incident/viewport/{format}": { + "get": { + "x-publish": true, + "description": "__Traffic Incident Viewport__\n\n\n**Applies to**: S0 and S1 pricing tiers.\n\nThis API returns legal and technical information for the viewport described in the request. It should be called by client applications whenever the viewport changes (for instance, through zooming, panning, going to a location, or displaying a route). The request should contain the bounding box and zoom level of the viewport whose information is needed. The return will contain map version information, as well as the current Traffic Model ID and copyright IDs. The Traffic Model ID returned by the Viewport Description is used by other APIs to retrieve last traffic information for further processing.", + "operationId": "Traffic_GetTrafficIncidentViewport", + "x-ms-examples": { + "GetTrafficIncidentViewport": { + "$ref": "./examples/GetTrafficIncidentViewport.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/TextFormat" + }, + { + "name": "boundingbox", + "in": "query", + "description": "Bounding box of the map viewport in [EPSG900913](http://docs.openlayers.org/library/spherical_mercator.html) projection. The `boundingbox` is represented by two value pairs describing it's corners (first pair for lower left corner and second for upper right). All values should be separated by commas (e.g., _minY,minX,maxY,maxX_). The maximum size of the bounding box that can be passed is dependent on the requested zoom level. The width and height cannot exceed 4092 pixels when rendered on the given zoom level.

NOTE: Bounding boxes that cross the 180° meridian require special treatment. For such boxes, the eastern _maxX_ value will be negative, and thus less than the _minX_ value west of the 180° meridian. To address that, the value 40075016.6855874 should be added to the true _maxX_ value before it is passed in the request.", + "required": true, + "type": "string" + }, + { + "name": "boundingzoom", + "in": "query", + "description": "Zoom level of the map viewport. Used to determine whether the view can be zoomed in.", + "required": true, + "type": "integer", + "minimum": 0, + "maximum": 22 + }, + { + "name": "overviewbox", + "in": "query", + "description": "Bounding box of the overview map in [EPSG900913](http://docs.openlayers.org/library/spherical_mercator.html) projection.

Used in case the overview box/mini map has different copyright data than the main map. If there is no mini map, the same coordinates as `boundingBox` is used.", + "required": true, + "type": "string" + }, + { + "name": "overviewzoom", + "in": "query", + "description": "Zoom level of the overview map. If there is no mini map, use the same zoom level as boundingZoom.", + "required": true, + "type": "integer", + "minimum": 0, + "maximum": 22 + }, + { + "name": "copyright", + "in": "query", + "description": "Determines what copyright information to return. When true the copyright text is returned; when false only the copyright index is returned.", + "required": true, + "type": "boolean", + "default": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TrafficIncidentViewportResult" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "Coordinate": { + "description": "A location represented as a latitude and longitude.", + "type": "object", + "properties": { + "latitude": { + "description": "Latitude property", + "type": "number", + "format": "double", + "readOnly": true + }, + "longitude": { + "description": "Longitude property", + "type": "number", + "format": "double", + "readOnly": true + } + } + }, + "TrafficFlowTileResult": { + "description": "This image is returned from a successful Traffic Flow Tile call", + "type": "string", + "format": "binary", + "readOnly": true + }, + "TrafficFlowSegmentResult": { + "description": "This object is returned from a successful Traffic Flow Segment call", + "type": "object", + "properties": { + "flowSegmentData": { + "description": "Flow Segment Data property", + "type": "object", + "readOnly": true, + "properties": { + "frc": { + "description": "Functional Road Class. This indicates the road type:\n 0: Motorway, freeway or other major road.\n 1: Major road, less important than a motorway.\n 2: Other major road.\n 3: Secondary road.\n 4: Local connecting road.\n 5: Local road of high importance.\n 6: Local road.", + "type": "string", + "readOnly": true + }, + "currentSpeed": { + "description": "The current average speed at the selected point, in the units requested. This is calculated from the currentTravelTime and the length of the selected segment.", + "type": "integer", + "readOnly": true + }, + "freeFlowSpeed": { + "description": "The free flow speed expected under ideal conditions, expressed in the units requested. This is related to the freeFlowTravelTime.", + "type": "integer", + "readOnly": true + }, + "currentTravelTime": { + "description": "Current travel time in seconds based on fused real-time measurements between the defined locations in the specified direction.", + "type": "integer", + "readOnly": true + }, + "freeFlowTravelTime": { + "description": "The travel time in seconds which would be expected under ideal free flow conditions.", + "type": "integer", + "readOnly": true + }, + "confidence": { + "description": "The confidence is a measure of the quality of the provided travel time and speed. A value of 1 means full confidence, that the response contains the highest quality data. Lower values indicate the degree that the response may vary from the actual conditions on the road. Any value greater than 0.6 means the information was based on real-time probe input. A value of 0.5 means the reported speed is based on historical info. A value between 0.5 and 0.6 has a calculated weighted average between historical and live speeds.", + "type": "number", + "readOnly": true + }, + "coordinates": { + "description": "Includes the coordinates describing the shape of the segment. Coordinates are shifted from the road depending on the zoom level to support high quality visualization in every scale.", + "type": "object", + "properties": { + "coordinate": { + "description": "Coordinate array", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Coordinate" + } + } + } + }, + "@version": { + "description": "This indicates the software version that generated the response.", + "type": "string", + "readOnly": true + }, + "openlr": { + "description": "OpenLR code for segment", + "type": "number", + "readOnly": true + } + } + } + } + }, + "TrafficIncidentTileResult": { + "description": "This object is returned from a successful Traffic Incident Tile call", + "type": "object", + "properties": { + "image": { + "description": "Image property", + "type": "string", + "readOnly": true + } + } + }, + "TrafficIncidentDetailResult": { + "description": "This object is returned from a successful Traffic incident Detail call", + "type": "object", + "properties": { + "tm": { + "description": "Main response element", + "type": "object", + "readOnly": true, + "properties": { + "@id": { + "description": "ID of the traffic incident", + "type": "string", + "readOnly": true + }, + "poi": { + "description": "A single traffic incident, or a cluster of traffic incidents", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TrafficIncidentPoi" + } + } + } + } + } + }, + "TrafficIncidentPoi": { + "type": "object", + "readOnly": true, + "properties": { + "id": { + "description": "ID of the traffic incident", + "type": "string", + "readOnly": true + }, + "p": { + "description": "The point where an icon of the cluster or raw incident should be drawn, expressed in the requested projection. This is affected by traffic style, zoom level and road type", + "type": "object", + "readOnly": true, + "properties": { + "x": { + "description": "x coordinate", + "type": "number", + "readOnly": true + }, + "y": { + "description": "y coordinate", + "type": "number", + "readOnly": true + } + } + }, + "ic": { + "description": "The icon category associated with this incident. Values are numbers in the range 0-13, with the following meanings -- 0: Unknown, 1: Accident, 2: Fog, 3: Dangerous Conditions, 4: Rain, 5: Ice, 6: Jam, 7: Lane Closed, 8: Road Closed, 9: Road Works, 10: Wind, 11: Flooding, 12: Detour, 13: Cluster", + "type": "integer", + "readOnly": true + }, + "ty": { + "description": "The magnitude of delay associated with incident. These values correspond to incident colors in the traffic tiles", + "type": "integer", + "readOnly": true + }, + "cbl": { + "description": "Bottom left coordinate of the cluster in the projection of the request", + "type": "object", + "readOnly": true, + "properties": { + "x": { + "description": "x coordinate", + "type": "number", + "readOnly": true + }, + "y": { + "description": "y coordinate", + "type": "number", + "readOnly": true + } + } + }, + "ctr": { + "description": "Top right coordinate of the cluster in the projection of the request", + "type": "object", + "readOnly": true, + "properties": { + "x": { + "description": "x coordinate", + "type": "number", + "readOnly": true + }, + "y": { + "description": "y coordinate", + "type": "number", + "readOnly": true + } + } + }, + "cs": { + "description": "Cluster size: the number of incidents in the cluster", + "type": "integer", + "readOnly": true + }, + "l": { + "description": "Length of the incident in meters", + "type": "integer", + "readOnly": true + }, + "r": { + "description": "The road number(s) affected by the incident. Multiple road numbers will delimited by slashes", + "type": "string", + "readOnly": true + }, + "dl": { + "description": "Delay caused by the incident in seconds (except in road closures)", + "type": "integer", + "readOnly": true + }, + "t": { + "description": "To: the name of the intersection or location where the traffic due to the incident ends", + "type": "string", + "readOnly": true + }, + "f": { + "description": "From: the name of the intersection or location where the traffic due to the incident starts", + "type": "string", + "readOnly": true + }, + "d": { + "description": "Description of the incident in the language requested", + "type": "string", + "readOnly": true + }, + "c": { + "description": "Cause of the incident, where available, in the language requested", + "type": "string", + "readOnly": true + } + } + }, + "TrafficIncidentViewportResult": { + "description": "This object is returned from a successful Traffic Incident Viewport call", + "type": "object", + "properties": { + "viewpResp": { + "description": "Viewport Response object", + "type": "object", + "readOnly": true, + "properties": { + "trafficState": { + "description": "Traffic State array", + "type": "object", + "readOnly": true, + "properties": { + "@trafficAge": { + "description": "@Traffic Age property", + "type": "integer", + "readOnly": true + }, + "@trafficModelId": { + "description": "@Traffic Model Id property", + "type": "string", + "readOnly": true + } + } + }, + "copyrightIds": { + "description": "Copyright Ids property", + "type": "string", + "readOnly": true + }, + "@version": { + "description": "@Version property", + "type": "string", + "readOnly": true + }, + "@maps": { + "description": "@maps property", + "type": "string", + "readOnly": true + } + } + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/DeleteItem.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/DeleteItem.json new file mode 100644 index 000000000000..127a25dc1639 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/DeleteItem.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "1.0", + "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "facility", + "featureId": "FCL39" + }, + "responses": { + "204": {}, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollection.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollection.json new file mode 100644 index 000000000000..583b150414ee --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollection.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "1.0", + "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "unit" + }, + "responses": { + "200": { + "body": { + "name": "unit", + "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the isOpenArea attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If isOpenArea attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a lineElement or areaElement with isObstruction equal to true.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for unit" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0", + "rel": "data", + "title": "unit" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for unit" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollectionDefinition.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollectionDefinition.json new file mode 100644 index 000000000000..e4d17ccf6650 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollectionDefinition.json @@ -0,0 +1,196 @@ +{ + "parameters": { + "api-version": "1.0", + "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "unit" + }, + "responses": { + "200": { + "body": { + "idPrefix": "UNIT", + "name": "unit", + "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the isOpenArea attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If isOpenArea attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a lineElement or areaElement with isObstruction equal to true.", + "geometryType": "Polygon", + "featureTypes": [], + "properties": [ + { + "name": "externalId", + "required": false, + "type": "text" + }, + { + "name": "originalId", + "required": false, + "type": "text" + }, + { + "name": "categoryId", + "required": true, + "type": { + "featureId": "category" + } + }, + { + "name": "isOpenArea", + "required": false, + "type": "boolean" + }, + { + "name": "navigableBy", + "required": false, + "type": { + "array": { + "enum": [ + "pedestrian", + "wheelchair", + "machine", + "bicycle", + "automobile", + "hiredAuto", + "bus", + "railcar", + "emergency", + "ferry", + "boat" + ] + } + } + }, + { + "name": "isRoutable", + "required": false, + "type": "boolean" + }, + { + "name": "routeThroughBehavior", + "required": false, + "type": { + "enum": [ + "disallowed", + "allowed", + "preferred" + ] + } + }, + { + "name": "nonPublic", + "required": false, + "type": "boolean" + }, + { + "name": "levelId", + "required": true, + "type": { + "featureId": "level" + } + }, + { + "name": "occupants", + "required": false, + "type": { + "array": { + "featureId": "directoryInfo" + } + } + }, + { + "name": "addressId", + "required": false, + "type": { + "featureId": "directoryInfo" + } + }, + { + "name": "addressRoomNumber", + "required": false, + "type": "text" + }, + { + "name": "name", + "required": false, + "type": "text" + }, + { + "name": "nameSubtitle", + "required": false, + "type": "text" + }, + { + "name": "nameAlt", + "required": false, + "type": "text" + }, + { + "name": "anchorPoint", + "required": false, + "type": { + "geometry": [ + "Point" + ], + "isFragmented": false, + "srid": 4326 + } + } + ], + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/definition?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for unit" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0", + "rel": "data", + "title": "unit" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollections.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollections.json new file mode 100644 index 000000000000..7048a3299237 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetCollections.json @@ -0,0 +1,297 @@ +{ + "parameters": { + "api-version": "1.0", + "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "collections": [ + { + "name": "unit", + "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the isOpenArea attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If isOpenArea attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a lineElement or areaElement with isObstruction equal to true.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for unit" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0", + "rel": "data", + "title": "unit" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for unit" + } + ] + }, + { + "name": "zone", + "description": "A virtual area. ex, wifi zone, emergency assembly area. Zones can be used as destinations but not meant for through traffic.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/zone/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for zone" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/zone/items?api-version=1.0", + "rel": "data", + "title": "zone" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/zone?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for zone" + } + ] + }, + { + "name": "level", + "description": "An indication of the extent and vertical position of a set of features.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/level/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for level" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/level/items?api-version=1.0", + "rel": "data", + "title": "level" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/level?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for level" + } + ] + }, + { + "name": "facility", + "description": "Area of the site, building footprint etc.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/facility/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for facility" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/facility/items?api-version=1.0", + "rel": "data", + "title": "facility" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/facility?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for facility" + } + ] + }, + { + "name": "verticalPenetration", + "description": "An area that, when used in a set, represents a method of navigating vertically between levels. It can be used to model stairs, elevators etc. Geometry can overlap units and other vertical penetration features.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/verticalPenetration/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for verticalPenetration" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/verticalPenetration/items?api-version=1.0", + "rel": "data", + "title": "verticalPenetration" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/verticalPenetration?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for verticalPenetration" + } + ] + }, + { + "name": "opening", + "description": "A usually-traversable boundary between two units, or a unit and verticalPenetration.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/opening/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for opening" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/opening/items?api-version=1.0", + "rel": "data", + "title": "opening" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/opening?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for opening" + } + ] + }, + { + "name": "directoryInfo", + "description": "Name, address, phone number, website, and hours of operation for a unit, facility, or an occupant of a unit or facility.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/directoryInfo/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for directoryInfo" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/directoryInfo/items?api-version=1.0", + "rel": "data", + "title": "directoryInfo" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/directoryInfo?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for directoryInfo" + } + ] + }, + { + "name": "pointElement", + "description": "A point feature in a unit, such as a first aid kit or a sprinkler head.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/pointElement/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for pointElement" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/pointElement/items?api-version=1.0", + "rel": "data", + "title": "pointElement" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/pointElement?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for pointElement" + } + ] + }, + { + "name": "lineElement", + "description": "A line feature in a unit, such as a dividing wall, window.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/lineElement/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for lineElement" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/lineElement/items?api-version=1.0", + "rel": "data", + "title": "lineElement" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/lineElement?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for lineElement" + } + ] + }, + { + "name": "areaElement", + "description": "A polygon feature in a unit, such as an area open to below, an obstruction like an island in a unit.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/areaElement/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for areaElement" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/areaElement/items?api-version=1.0", + "rel": "data", + "title": "areaElement" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/areaElement?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for areaElement" + } + ] + }, + { + "name": "category", + "description": "Category names. e.g. \"room.conference\". The isRoutable attribute puts a feature with that category on the routing graph. The routeThroughBehavior attribute determines whether a feature can be used for through traffic or not.", + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/category/definition?api-version=1.0", + "rel": "describedBy", + "title": "Metadata catalogue for category" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/category/items?api-version=1.0", + "rel": "data", + "title": "category" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/category?api-version=1.0", + "rel": "self", + "title": "Metadata catalogue for category" + } + ] + } + ], + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections?api-version=1.0", + "rel": "self" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetConformance.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetConformance.json new file mode 100644 index 000000000000..2087dca71fe4 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetConformance.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "1.0", + "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "conformsTo": [ + "http://www.opengis.net/spec/wfs-1/3.0/req/core", + "http://www.opengis.net/spec/wfs-1/3.0/req/oas30", + "http://www.opengis.net/spec/wfs-1/3.0/req/geojson", + "http://tempuri.org/wfs/3.0/edit" + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItem.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItem.json new file mode 100644 index 000000000000..a83972b09aa0 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItem.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "1.0", + "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "unit", + "featureId": "UNIT39" + }, + "responses": { + "200": { + "body": { + "feature": { + "type": "feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 139.63304057829211, + 35.457686686108559 + ], + [ + 139.63296283234274, + 35.457783904258683 + ], + [ + 139.63308672404617, + 35.457850229062018 + ], + [ + 139.63314516916711, + 35.457777145699858 + ], + [ + 139.63312747036289, + 35.457767670747167 + ], + [ + 139.63314677109963, + 35.457743535881377 + ], + [ + 139.63304057829211, + 35.457686686108559 + ] + ] + ] + }, + "properties": { + "originalId": "ddbbb583-4621-4e11-8859-299d1057e843", + "categoryId": "CTG10", + "isOpenArea": false, + "navigableBy": [ + "pedestrian" + ], + "isRoutable": false, + "routeThroughBehavior": "allowed", + "nonPublic": false, + "levelId": "LVL18", + "occupants": [], + "addressId": "DIR16", + "addressRoomNumber": "", + "name": "21N13", + "nameSubtitle": "", + "nameAlt": "" + }, + "id": "UNIT39", + "featureType": "" + }, + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items/UNIT39?api-version=1.0", + "rel": "self" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", + "rel": "data" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItems.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItems.json new file mode 100644 index 000000000000..0d83c6416334 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetItems.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "1.0", + "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]", + "collectionId": "unit", + "limit": 1, + "bbox": "-122, 47, -120, 46" + }, + "responses": { + "200": { + "body": { + "type": "FeatureCollection", + "features": [ + { + "type": "feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 139.63304057829211, + 35.457686686108559 + ], + [ + 139.63296283234274, + 35.457783904258683 + ], + [ + 139.63308672404617, + 35.457850229062018 + ], + [ + 139.63314516916711, + 35.457777145699858 + ], + [ + 139.63312747036289, + 35.457767670747167 + ], + [ + 139.63314677109963, + 35.457743535881377 + ], + [ + 139.63304057829211, + 35.457686686108559 + ] + ] + ] + }, + "properties": { + "originalId": "ddbbb583-4621-4e11-8859-299d1057e843", + "categoryId": "CTG10", + "isOpenArea": false, + "navigableBy": [ + "pedestrian" + ], + "isRoutable": false, + "routeThroughBehavior": "allowed", + "nonPublic": false, + "levelId": "LVL18", + "occupants": [], + "addressId": "DIR16", + "addressRoomNumber": "", + "name": "21N13", + "nameSubtitle": "", + "nameAlt": "" + }, + "id": "UNIT39", + "featureType": "" + } + ], + "numberReturned": 1, + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?api-version=1.0&limit=1", + "rel": "self" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit?api-version=1.0", + "rel": "data" + }, + { + "href": "https://atlas.microsoft.com/wfs/dataset/4a25a249-8bd4-3f78-8cd8-eff11751d35b/collections/unit/items?n=PMRG4ZLYOQRDUMJMEJYHEZLWEI5C2ML5&api-version=1.0&limit=1", + "rel": "next" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetLandingPage.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetLandingPage.json new file mode 100644 index 000000000000..028fa8cfe0aa --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/examples/GetLandingPage.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "1.0", + "datasetid": "018fda98-e638-0edf-5ef7-28491ff3bed4", + "subscription-key": "[subscription-key]" + }, + "responses": { + "200": { + "body": { + "links": [ + { + "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4", + "rel": "self", + "title": "Azure Maps WFS" + }, + { + "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/api", + "rel": "service", + "title": "The API definition" + }, + { + "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/conformance", + "rel": "conformance", + "title": "WFS 3.0 conformance classes implemented by this server" + }, + { + "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/version", + "rel": "data", + "title": "The version information" + }, + { + "href": "https://atlas.microsoft.com/wfs/datasets/018fda98-e638-0edf-5ef7-28491ff3bed4/collections", + "rel": "data", + "title": "Metadata about the feature collections" + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/wfs.json b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/wfs.json new file mode 100644 index 000000000000..962c2490603e --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/WFS/preview/1.0/wfs.json @@ -0,0 +1,984 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Web Feature Service", + "version": "1.0", + "description": "Azure Maps Web Feature REST APIs" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json", + "application/xml" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "202": { + "description": "Request Accepted: The request has been accepted for processing. Please use the URL in the Location Header to retry or access the results.", + "headers": { + "Location": { + "type": "string", + "description": "New URL to check for the results of the long running process." + } + } + }, + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "Datasetid": { + "name": "datasetid", + "type": "string", + "in": "path", + "description": "The identifier for the dataset to query from.", + "required": true, + "x-ms-parameter-location": "method" + }, + "LimitWfs": { + "name": "limit", + "in": "query", + "type": "number", + "minimum": 1, + "maximum": 50, + "default": 10, + "description": "The optional limit parameter limits the number of features that are presented in the response document.\nOnly features that are on the first level of the collection in the response document are counted. Nested objects contained within the explicitly requested features shall not be counted.\n* Minimum = 1 * Maximum = 50 * Default = 10", + "x-ms-parameter-location": "method" + }, + "Filter": { + "name": "filter", + "in": "query", + "type": "string", + "description": "Filter expression to search for features with specific property values in a given collection. Only feature properties of scalar type and equals operator are supported.\nThis is a special parameter where the parameter name is the property name. The scheme for this parameter is {property name}={property value}. Unless \"filter\" is one of the property names in the collection, \"filter\" should not be used as a parameter name. To search for features with \"name\" property value \"21N13\", use \"name=21N13\".\nMultiple filters are supported and should be represented as multiple query parameters. E.g., =&= String values are case sensitive.", + "x-ms-parameter-location": "method" + }, + "Bbox": { + "name": "bbox", + "in": "query", + "type": "string", + "description": "Only features that have a geometry that intersects the supplied bounding box are selected.\n* Lower left corner, coordinate axis 1 * Lower left corner, coordinate axis 2 * Upper right corner, coordinate axis 1 * Upper right corner, coordinate axis 2\nThe coordinate reference system of the values is WGS84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate reference system is specified in the parameter `bbox-crs`.\nFor WGS84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge).", + "required": false, + "x-ms-parameter-location": "method" + }, + "CollectionId": { + "name": "collectionId", + "in": "path", + "type": "string", + "required": true, + "description": "Identifier (name) of a specific collection", + "x-ms-parameter-location": "method" + }, + "FeatureId": { + "name": "featureId", + "in": "path", + "type": "string", + "description": "Local identifier of a specific feature", + "required": true, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/wfs/datasets/{datasetid}/": { + "get": { + "x-publish": true, + "description": "Creator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Get Landing Page API provides links to the API definition, the Conformance statements and the metadata about the feature data in this dataset.", + "operationId": "WFS_GetLandingPagePreview", + "x-ms-examples": { + "GetLandingPage": { + "$ref": "./examples/GetLandingPage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/Root" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/conformance": { + "get": { + "description": "Creator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Get Requirements Classes lists all requirements classes specified in the standard that the server conforms to.", + "x-publish": true, + "operationId": "WFS_GetRequirementsClassesPreview", + "x-ms-examples": { + "GetConformance": { + "$ref": "./examples/GetConformance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/ReqClasses" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections": { + "get": { + "description": "Creator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Collections Description API provides descriptions of all the collections in a given dataset.", + "operationId": "WFS_CollectionsDescriptionPreview", + "x-publish": true, + "x-ms-examples": { + "GetCollections": { + "$ref": "./examples/GetCollections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/Content" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections/{collectionId}": { + "get": { + "description": "Creator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\n \nThe Collection Description API provides the description of a given collection. It includes the links to the operations that can be performed on the collection.", + "operationId": "WFS_CollectionDescriptionPreview", + "x-publish": true, + "x-ms-examples": { + "GetCollection": { + "$ref": "./examples/GetCollection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/CollectionInfo" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections/{collectionId}/definition": { + "get": { + "description": "Creator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\n \nThe Collection Definition API provides the detailed data model of a given collection.", + "operationId": "WFS_CollectionDefinitionPreview", + "x-publish": true, + "x-ms-examples": { + "GetCollectionDefinition": { + "$ref": "./examples/GetCollectionDefinition.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/CollectionDefinition" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections/{collectionId}/items": { + "get": { + "description": "Creator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Get Features API returns the list of features in the given collection.", + "operationId": "WFS_GetFeaturesPreview", + "x-publish": true, + "x-ms-examples": { + "Getitems": { + "$ref": "./examples/GetItems.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + }, + { + "$ref": "#/parameters/LimitWfs" + }, + { + "$ref": "#/parameters/Bbox" + }, + { + "$ref": "#/parameters/Filter" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/FeatureCollectionGeoJSON" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/wfs/datasets/{datasetid}/collections/{collectionId}/items/{featureId}": { + "get": { + "description": "Creator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Get Feature API returns the feature identified by the provided id in the given collection.", + "x-publish": true, + "operationId": "WFS_GetFeaturePreview", + "x-ms-examples": { + "GetFeature": { + "$ref": "./examples/GetItem.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + }, + { + "$ref": "#/parameters/FeatureId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Feature" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + }, + "delete": { + "description": "Creator makes it possible to develop applications based on your private indoor map data using Azure Maps API and SDK. The Web Feature Service (WFS) API is part of Creator. WFS API follows the [Open Geospatial Consortium API standard for Features](http://docs.opengeospatial.org/is/17-069r3/17-069r3.html) to query [Datasets](https://docs.microsoft.com/en-us/rest/api/maps/dataset/createpreview). \nA dataset consists of multiple feature collections. A feature collection is a collection of features of a similar type, based on a common schema.\nThe Delete Feature API deletes the feature identified by the provided id in the given collection. At this point this API supports only facility features. Deleting a facility feature deletes all the child features of that facility recursively.", + "x-publish": true, + "operationId": "WFS_DeleteFeaturePreview", + "x-ms-examples": { + "GetFeature": { + "$ref": "./examples/DeleteItem.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/Datasetid" + }, + { + "$ref": "#/parameters/CollectionId" + }, + { + "$ref": "#/parameters/FeatureId" + } + ], + "responses": { + "204": { + "description": "Feature Deleted." + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "Exception": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "code": { + "type": "string" + }, + "description": { + "type": "string" + } + } + }, + "Root": { + "type": "object", + "required": [ + "links" + ], + "properties": { + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + } + } + } + }, + "ReqClasses": { + "type": "object", + "required": [ + "conformsTo" + ], + "properties": { + "conformsTo": { + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "http://www.opengis.net/spec/wfs-1/3.0/req/core", + "http://www.opengis.net/spec/wfs-1/3.0/req/oas30", + "http://www.opengis.net/spec/wfs-1/3.0/req/html", + "http://www.opengis.net/spec/wfs-1/3.0/req/geojson" + ] + } + } + }, + "Link": { + "description": "Links to other WFS endpoints", + "type": "object", + "required": [ + "href" + ], + "properties": { + "href": { + "type": "string" + }, + "rel": { + "type": "string", + "example": "prev" + }, + "type": { + "type": "string", + "example": "application/geo+json" + }, + "hreflang": { + "type": "string", + "example": "en" + }, + "title": { + "type": "string" + } + } + }, + "Content": { + "type": "object", + "required": [ + "links", + "collections" + ], + "properties": { + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + }, + "example": [ + { + "href": "http://data.example.org/collections.json", + "rel": "self", + "type": "application/json", + "title": "this document" + }, + { + "href": "http://data.example.org/collections.html", + "rel": "alternate", + "type": "text/html", + "title": "this document as HTML" + }, + { + "href": "http://schemas.example.org/1.0/foobar.xsd", + "rel": "describedBy", + "type": "application/xml", + "title": "XML schema for Acme Corporation data" + } + ] + }, + "collections": { + "type": "array", + "items": { + "$ref": "#/definitions/CollectionInfo" + } + } + } + }, + "Version": { + "type": "object", + "required": [ + "version", + "revisionTimestamp", + "links" + ], + "properties": { + "version": { + "description": "version number of the dataset", + "type": "string", + "example": "1.0.0" + }, + "revisionTimestamp": { + "description": "timestamp of the revision", + "type": "string", + "example": "2020-01-02T03:04:05" + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + }, + "example": [ + { + "href": "http://data.example.org/collections.json", + "rel": "self", + "type": "application/json", + "title": "this document" + }, + { + "href": "http://data.example.org/collections.html", + "rel": "alternate", + "type": "text/html", + "title": "this document as HTML" + }, + { + "href": "http://schemas.example.org/1.0/foobar.xsd", + "rel": "describedBy", + "type": "application/xml", + "title": "XML schema for Acme Corporation data" + } + ] + } + } + }, + "CollectionInfo": { + "type": "object", + "required": [ + "name", + "links" + ], + "properties": { + "name": { + "description": "identifier of the collection used, for example, in URIs", + "type": "string", + "example": "buildings" + }, + "title": { + "description": "human readable title of the collection", + "type": "string", + "example": "Buildings" + }, + "description": { + "description": "a description of the features in the collection", + "type": "string", + "example": "Buildings in the city of Bonn." + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + }, + "example": [ + { + "href": "http://data.example.org/collections/buildings/items", + "rel": "item", + "type": "application/geo+json", + "title": "Buildings" + }, + { + "href": "http://example.org/concepts/building.html", + "rel": "describedBy", + "type": "text/html", + "title": "Feature catalogue for buildings" + } + ] + } + } + }, + "CollectionDefinition": { + "description": "collection of GeoJSON features", + "type": "object", + "required": [ + "idPrefix", + "name", + "geometryType", + "featureTypes" + ], + "properties": { + "description": { + "description": "describes the collection", + "type": "string" + }, + "idPrefix": { + "description": "prefix of the collection used", + "type": "string", + "example": "BLD" + }, + "name": { + "description": "identifier of the collection used, for example, in URIs", + "type": "string", + "example": "buildings" + }, + "title": { + "description": "title of collection", + "type": "string", + "example": "Feature Class buildings" + }, + "geometryType": { + "description": "type of geometry returned", + "type": "string", + "enum": [ + "Point", + "MultiPoint", + "LineString", + "MultiLineString", + "Polygon", + "MultiPolygon", + "GeometryCollection" + ] + }, + "featureTypes": { + "description": "type of features returned", + "type": "array", + "items": { + "type": "string" + } + }, + "properties": { + "description": "attributes of the collection used", + "type": "array", + "items": { + "$ref": "#/definitions/DefinitionProperties" + } + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + } + } + } + }, + "DefinitionProperties": { + "type": "object", + "required": [ + "name", + "required", + "type" + ], + "properties": { + "name": { + "description": "name of attribute", + "type": "string", + "example": "external_id" + }, + "required": { + "description": "is attribute required", + "type": "boolean" + }, + "type": { + "description": "type of attribute", + "type": "object" + } + } + }, + "FeatureCollectionGeoJSON": { + "type": "object", + "required": [ + "type", + "features" + ], + "properties": { + "type": { + "type": "string" + }, + "numberReturned": { + "type": "integer" + }, + "features": { + "type": "array", + "items": { + "$ref": "#/definitions/FeatureGeoJSON" + } + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + } + } + } + }, + "Feature": { + "type": "object", + "required": [ + "feature" + ], + "properties": { + "feature": { + "$ref": "#/definitions/FeatureGeoJSON" + }, + "links": { + "type": "array", + "items": { + "$ref": "#/definitions/Link" + } + } + } + }, + "FeatureGeoJSON": { + "description": "GeoJSON Feature", + "type": "object", + "required": [ + "type", + "geometry", + "properties" + ], + "properties": { + "type": { + "description": "feature", + "type": "string" + }, + "geometry": { + "description": "This represents the geometry for one or more geographical features (parks, state boundary etc.) and should be a `GeoJSON` compliant type. Please refer to [RFC 7946](https://tools.ietf.org/html/rfc7946) for details.", + "type": "object" + }, + "properties": { + "description": "Additional properties of the feature.", + "type": "object" + }, + "id": { + "description": "Identifier for the feature.", + "type": "string" + }, + "featureType": { + "description": "The type of the feature. The value depends on the data model the current feature is part of. Some data models may have an empty value.", + "type": "string" + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetCurrentConditions.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetCurrentConditions.json new file mode 100644 index 000000000000..7a176b6faf64 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetCurrentConditions.json @@ -0,0 +1,224 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "47.641268,-122.125679" + }, + "responses": { + "200": { + "body": { + "results": [ + { + "dateTime": "2019-11-14T15:08:00-08:00", + "phrase": "Cloudy", + "iconCode": 7, + "hasPrecipitation": false, + "isDayTime": true, + "temperature": { + "value": 13.7, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 13.6, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperatureShade": { + "value": 13.6, + "unit": "C", + "unitType": 17 + }, + "relativeHumidity": 75, + "dewPoint": { + "value": 9.2, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 315, + "localizedDescription": "NW" + }, + "speed": { + "value": 3.6, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 4.9, + "unit": "km/h", + "unitType": 7 + } + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "visibility": { + "value": 8, + "unit": "km", + "unitType": 6 + }, + "obstructionsToVisibility": "", + "cloudCover": 95, + "ceiling": { + "value": 4359, + "unit": "m", + "unitType": 5 + }, + "pressure": { + "value": 1014.9, + "unit": "mb", + "unitType": 14 + }, + "pressureTendency": { + "localizedDescription": "Steady", + "code": "S" + }, + "past24HourTemperatureDeparture": { + "value": 1.8, + "unit": "C", + "unitType": 17 + }, + "apparentTemperature": { + "value": 16.1, + "unit": "C", + "unitType": 17 + }, + "windChillTemperature": { + "value": 13.9, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 11.4, + "unit": "C", + "unitType": 17 + }, + "precipitationSummary": { + "pastHour": { + "value": 0.5, + "unit": "mm", + "unitType": 3 + }, + "past3Hours": { + "value": 0.8, + "unit": "mm", + "unitType": 3 + }, + "past6Hours": { + "value": 0.8, + "unit": "mm", + "unitType": 3 + }, + "past9Hours": { + "value": 0.8, + "unit": "mm", + "unitType": 3 + }, + "past12Hours": { + "value": 0.8, + "unit": "mm", + "unitType": 3 + }, + "past18Hours": { + "value": 0.8, + "unit": "mm", + "unitType": 3 + }, + "past24Hours": { + "value": 0.8, + "unit": "mm", + "unitType": 3 + } + }, + "temperatureSummary": { + "past6Hours": { + "minimum": { + "value": 8.3, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 13.7, + "unit": "C", + "unitType": 17 + } + }, + "past12Hours": { + "minimum": { + "value": 5.9, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 13.7, + "unit": "C", + "unitType": 17 + } + }, + "past24Hours": { + "minimum": { + "value": 5.9, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 13.7, + "unit": "C", + "unitType": 17 + } + } + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetDailyForecast.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetDailyForecast.json new file mode 100644 index 000000000000..01c9363275db --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetDailyForecast.json @@ -0,0 +1,284 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "62.6490341,30.0734812", + "duration": 5 + }, + "responses": { + "200": { + "body": { + "summary": { + "startDate": "2019-11-17T09:00:00-08:00", + "endDate": "2019-11-17T15:00:00-08:00", + "severity": 5, + "phrase": "Rain Sunday evening", + "category": "rain" + }, + "forecasts": [ + { + "date": "2019-11-13T21:00:00-08:00", + "temperature": { + "minimum": { + "value": 0.8, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 5.3, + "unit": "C", + "unitType": 17 + } + }, + "realFeelTemperature": { + "minimum": { + "value": -3.4, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 1.3, + "unit": "C", + "unitType": 17 + } + }, + "realFeelTemperatureShade": { + "minimum": { + "value": -3.4, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 1.6, + "unit": "C", + "unitType": 17 + } + }, + "hoursOfSun": 1.1, + "degreeDaySummary": { + "heating": { + "value": 15, + "unit": "C", + "unitType": 17 + }, + "cooling": { + "value": 0, + "unit": "C", + "unitType": 17 + } + }, + "airAndPollen": [ + { + "name": "AirQuality", + "value": 0, + "category": "Good", + "categoryValue": 1, + "type": "Ozone" + }, + { + "name": "Grass", + "value": 0, + "category": "Low", + "categoryValue": 1 + }, + { + "name": "Mold", + "value": 0, + "category": "Low", + "categoryValue": 1 + }, + { + "name": "Ragweed", + "value": 0, + "category": "Low", + "categoryValue": 1 + }, + { + "name": "Tree", + "value": 0, + "category": "Low", + "categoryValue": 1 + }, + { + "name": "UVIndex", + "value": 0, + "category": "Low", + "categoryValue": 1 + } + ], + "day": { + "iconCode": 12, + "iconPhrase": "Showers", + "hasPrecipitation": true, + "precipitationType": "Rain", + "precipitationIntensity": "Light", + "shortPhrase": "Cloudy with a few showers", + "longPhrase": "Cloudy with a couple of showers, mainly later", + "precipitationProbability": 75, + "thunderstormProbability": 20, + "rainProbability": 75, + "snowProbability": 40, + "iceProbability": 0, + "wind": { + "direction": { + "degrees": 160, + "localizedDescription": "SSE" + }, + "speed": { + "value": 16.7, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "direction": { + "degrees": 160, + "localizedDescription": "SSE" + }, + "speed": { + "value": 48.2, + "unit": "km/h", + "unitType": 7 + } + }, + "totalLiquid": { + "value": 6.1, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 6.1, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "hoursOfPrecipitation": 3.5, + "hoursOfRain": 3.5, + "hoursOfSnow": 0, + "hoursOfIce": 0, + "cloudCover": 100 + }, + "night": { + "iconCode": 12, + "iconPhrase": "Showers", + "hasPrecipitation": true, + "precipitationType": "Rain", + "precipitationIntensity": "Light", + "shortPhrase": "Breezy early; cloudy", + "longPhrase": "Breezy this evening; otherwise, low clouds", + "precipitationProbability": 65, + "thunderstormProbability": 0, + "rainProbability": 64, + "snowProbability": 40, + "iceProbability": 0, + "wind": { + "direction": { + "degrees": 181, + "localizedDescription": "S" + }, + "speed": { + "value": 20.4, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "direction": { + "degrees": 170, + "localizedDescription": "S" + }, + "speed": { + "value": 42.6, + "unit": "km/h", + "unitType": 7 + } + }, + "totalLiquid": { + "value": 4, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 4, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "hoursOfPrecipitation": 2.5, + "hoursOfRain": 2.5, + "hoursOfSnow": 0, + "hoursOfIce": 0, + "cloudCover": 98 + }, + "sources": [ + "AccuWeather" + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetDailyIndices.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetDailyIndices.json new file mode 100644 index 000000000000..660e58e670ca --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetDailyIndices.json @@ -0,0 +1,251 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "43.84745,-79.37849", + "indexGroupId": 11 + }, + "responses": { + "200": { + "body": { + "results": [ + { + "indexName": "Running Forecast", + "indexId": 1, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.2, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "This is an excellent day for outdoor running!" + }, + { + "indexName": "Jogging Forecast", + "indexId": 2, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.4, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "Conditions are excellent for jogging outdoors!" + }, + { + "indexName": "Hiking Forecast", + "indexId": 3, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.8, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "Conditions are excellent for hiking!" + }, + { + "indexName": "Bicycling Forecast", + "indexId": 4, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.9, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "Conditions are excellent for bicycling outdoors!" + }, + { + "indexName": "Golf Weather Forecast", + "indexId": 5, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 10.0, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "This is a great day for golf." + }, + { + "indexName": "Tennis Forecast", + "indexId": 6, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.2, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "This is an excellent day for playing tennis!" + }, + { + "indexName": "Skateboarding Forecast", + "indexId": 7, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.9, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "This is an excellent day for skateboarding!" + }, + { + "indexName": "Outdoor Concert Forecast", + "indexId": 8, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.7, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "Conditions are excellent for attending an outdoor concert!" + }, + { + "indexName": "Kite Flying Forecast", + "indexId": 9, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 8.5, + "category": "Very Good", + "categoryValue": 4, + "ascending": true, + "description": "Conditions are very good today for kite-flying." + }, + { + "indexName": "Beach & Pool Forecast", + "indexId": 10, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 8.6, + "category": "Very Good", + "categoryValue": 4, + "ascending": true, + "description": "Conditons will be very good for a visit to the beach or pool." + }, + { + "indexName": "Sailing Forecast", + "indexId": 11, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 8.3, + "category": "Very Good", + "categoryValue": 4, + "ascending": true, + "description": "Conditions will be very good for sailing." + }, + { + "indexName": "Stargazing Forecast", + "indexId": 12, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.5, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "This is a great night to be stargazing!" + }, + { + "indexName": "Fishing Forecast", + "indexId": 13, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 3.5, + "category": "Fair", + "categoryValue": 2, + "ascending": true, + "description": "Expect only fair conditions for fishing." + }, + { + "indexName": "Ski Weather Forecast", + "indexId": 15, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 0.0, + "category": "Poor", + "categoryValue": 1, + "ascending": true, + "description": "Expect poor conditions for skiing." + }, + { + "indexName": "Mosquito Activity Forecast", + "indexId": 17, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 7.0, + "category": "Very High", + "categoryValue": 4, + "ascending": true, + "description": "The weather is favorable for a very high level of mosquito activity. Plan activities and insect repellents accordingly." + }, + { + "indexName": "Hunting Forecast", + "indexId": 20, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 4.5, + "category": "Fair", + "categoryValue": 2, + "ascending": true, + "description": "Expect only fair conditions for hunting." + }, + { + "indexName": "Outdoor Barbecue", + "indexId": 24, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.8, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "This is a great day for an outdoor barbecue!" + }, + { + "indexName": "Lawn Mowing Forecast", + "indexId": 28, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 9.6, + "category": "Excellent", + "categoryValue": 5, + "ascending": true, + "description": "This is a great day for lawn mowing!" + }, + { + "indexName": "Outdoor Activity Forecast", + "indexId": 29, + "dateTime": "2020-07-14T07:00:00-04:00", + "value": 8.7, + "category": "Very Good", + "categoryValue": 4, + "ascending": true, + "description": "Conditions will be very good for outdoor activities." + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetHourlyForecast.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetHourlyForecast.json new file mode 100644 index 000000000000..f3ea02454b5d --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetHourlyForecast.json @@ -0,0 +1,1057 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "47.632346,-122.138874", + "duration": 12 + }, + "responses": { + "200": { + "body": { + "forecasts": [ + { + "date": "2019-11-14T16:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": true, + "temperature": { + "value": 13.4, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 14.1, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 10.9, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 8.4, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 311, + "localizedDescription": "NW" + }, + "speed": { + "value": 3.7, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 5.6, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 72, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 100, + "ceiling": { + "value": 3901, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 39, + "rainProbability": 39, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T17:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 12.5, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 12.8, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 10.2, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 7.8, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 281, + "localizedDescription": "W" + }, + "speed": { + "value": 5.6, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 7.4, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 73, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 94, + "ceiling": { + "value": 4054, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 34, + "rainProbability": 34, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T18:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 11.3, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 11.3, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 9.5, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 7.4, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 206, + "localizedDescription": "SSW" + }, + "speed": { + "value": 7.4, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 77, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 94, + "ceiling": { + "value": 4176, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 29, + "rainProbability": 29, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T19:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 10.4, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 9.8, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 8.8, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 7, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 169, + "localizedDescription": "S" + }, + "speed": { + "value": 7.4, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 11.1, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 79, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 93, + "ceiling": { + "value": 4542, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 20, + "rainProbability": 20, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T20:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 10.1, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 9.2, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 8.6, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 6.9, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 170, + "localizedDescription": "S" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 11.1, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 80, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 92, + "ceiling": { + "value": 4389, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 20, + "rainProbability": 20, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T21:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 10.1, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 9, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 8.8, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 7.1, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 170, + "localizedDescription": "S" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 13, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 82, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 91, + "ceiling": { + "value": 4481, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 20, + "rainProbability": 20, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T22:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 9.8, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 8.5, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 8.6, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 7.2, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 174, + "localizedDescription": "S" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 13, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 84, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 92, + "ceiling": { + "value": 4481, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 20, + "rainProbability": 20, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T23:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 9.8, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 8.5, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 8.5, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 7, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 175, + "localizedDescription": "S" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 13, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 82, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 94, + "ceiling": { + "value": 3688, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 20, + "rainProbability": 20, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-15T00:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 10.1, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 8.8, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 8.6, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 6.9, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 176, + "localizedDescription": "S" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 13, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 81, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 97, + "ceiling": { + "value": 2926, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 20, + "rainProbability": 20, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-15T01:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 9.9, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 8.5, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 8.5, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 6.8, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 177, + "localizedDescription": "S" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 13, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 81, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 99, + "ceiling": { + "value": 2164, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 21, + "rainProbability": 21, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-15T02:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 9.8, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 8.5, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 8.4, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 6.8, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 172, + "localizedDescription": "S" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 13, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 82, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 100, + "ceiling": { + "value": 1737, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 21, + "rainProbability": 21, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-15T03:00:00-08:00", + "iconCode": 7, + "iconPhrase": "Cloudy", + "hasPrecipitation": false, + "isDaylight": false, + "temperature": { + "value": 9.7, + "unit": "C", + "unitType": 17 + }, + "realFeelTemperature": { + "value": 8.6, + "unit": "C", + "unitType": 17 + }, + "wetBulbTemperature": { + "value": 8.4, + "unit": "C", + "unitType": 17 + }, + "dewPoint": { + "value": 6.9, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 161, + "localizedDescription": "SSE" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 13, + "unit": "km/h", + "unitType": 7 + } + }, + "relativeHumidity": 83, + "visibility": { + "value": 16.1, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 100, + "ceiling": { + "value": 1311, + "unit": "m", + "unitType": 5 + }, + "uvIndex": 0, + "uvIndexPhrase": "Low", + "precipitationProbability": 26, + "rainProbability": 26, + "snowProbability": 0, + "iceProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetMinuteForecast.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetMinuteForecast.json new file mode 100644 index 000000000000..d122f2685328 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetMinuteForecast.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "47.632346,-122.138874", + "interval": 15 + }, + "responses": { + "200": { + "body": { + "summary": { + "briefPhrase60": "Rain ending in 25 min", + "shortPhrase": "Rain ending in 25 min", + "briefPhrase": "Rain ending in 25 min", + "longPhrase": "Rain ending in 25 min", + "iconCode": 12 + }, + "intervalSummaries": [ + { + "startMinute": 0, + "endMinute": 24, + "totalMinutes": 25, + "shortPhrase": "Rain ending in %minute_value min", + "briefPhrase": "Rain ending in %minute_value min", + "longPhrase": "Rain ending in %minute_value min", + "iconCode": 12 + }, + { + "startMinute": 25, + "endMinute": 119, + "totalMinutes": 95, + "shortPhrase": "No precip for %MINUTE_VALUE min", + "briefPhrase": "No precipitation for at least %MINUTE_VALUE min", + "longPhrase": "No precipitation for at least %MINUTE_VALUE min", + "iconCode": 7 + } + ], + "intervals": [ + { + "startTime": "2019-11-14T15:18:00-08:00", + "minute": 0, + "dbz": 23, + "shortPhrase": "Light Rain", + "threshold": "LIGHT", + "color": { + "red": 8, + "green": 98, + "blue": 2, + "hex": "#086202" + }, + "simplifiedColor": { + "red": 35, + "green": 190, + "blue": 39, + "hex": "#23BE27" + }, + "precipitationType": "rain", + "iconCode": 12, + "cloudCover": 100 + }, + { + "startTime": "2019-11-14T15:33:00-08:00", + "minute": 15, + "dbz": 18, + "shortPhrase": "Light Rain", + "threshold": "LIGHT", + "color": { + "red": 32, + "green": 133, + "blue": 9, + "hex": "#208509" + }, + "simplifiedColor": { + "red": 35, + "green": 190, + "blue": 39, + "hex": "#23BE27" + }, + "precipitationType": "rain", + "iconCode": 12, + "cloudCover": 100 + }, + { + "startTime": "2019-11-14T15:48:00-08:00", + "minute": 30, + "dbz": 0, + "shortPhrase": "No Precipitation", + "iconCode": 7, + "cloudCover": 100 + }, + { + "startTime": "2019-11-14T16:03:00-08:00", + "minute": 45, + "dbz": 0, + "shortPhrase": "No Precipitation", + "iconCode": 7, + "cloudCover": 100 + }, + { + "startTime": "2019-11-14T16:18:00-08:00", + "minute": 60, + "dbz": 0, + "shortPhrase": "No Precipitation", + "iconCode": 7, + "cloudCover": 100 + }, + { + "startTime": "2019-11-14T16:33:00-08:00", + "minute": 75, + "dbz": 0, + "shortPhrase": "No Precipitation", + "iconCode": 7, + "cloudCover": 100 + }, + { + "startTime": "2019-11-14T16:48:00-08:00", + "minute": 90, + "dbz": 0, + "shortPhrase": "No Precipitation", + "iconCode": 7, + "cloudCover": 100 + }, + { + "startTime": "2019-11-14T17:03:00-08:00", + "minute": 105, + "dbz": 0, + "shortPhrase": "No Precipitation", + "iconCode": 7, + "cloudCover": 100 + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetQuarterDayForecast.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetQuarterDayForecast.json new file mode 100644 index 000000000000..add8661be976 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetQuarterDayForecast.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "47.632346,-122.138874", + "duration": 1 + }, + "responses": { + "200": { + "body": { + "forecasts": [ + { + "date": "2019-11-14T00:00:00", + "effectiveDate": "2019-11-14T07:00:00-08:00", + "quarter": 0, + "iconCode": 12, + "iconPhrase": "Showers", + "phrase": "Mostly cloudy with a shower in spots", + "temperature": { + "minimum": { + "value": 6.9, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 11.1, + "unit": "C", + "unitType": 17 + } + }, + "realFeelTemperature": { + "minimum": { + "value": 7.9, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 11.2, + "unit": "C", + "unitType": 17 + } + }, + "dewPoint": { + "value": 7.5, + "unit": "C", + "unitType": 17 + }, + "relativeHumidity": 90, + "wind": { + "direction": { + "degrees": 206, + "localizedDescription": "SSW" + }, + "speed": { + "value": 3.7, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "direction": { + "degrees": 192, + "localizedDescription": "SSW" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "visibility": { + "value": 2, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 99, + "hasPrecipitation": true, + "precipitationType": "Rain", + "precipitationIntensity": "Light", + "precipitationProbability": 55, + "thunderstormProbability": 20, + "totalLiquid": { + "value": 0.6, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0.6, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T00:00:00", + "effectiveDate": "2019-11-14T13:00:00-08:00", + "quarter": 1, + "iconCode": 12, + "iconPhrase": "Showers", + "phrase": "Mostly cloudy with a shower in spots", + "temperature": { + "minimum": { + "value": 11.3, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 13.7, + "unit": "C", + "unitType": 17 + } + }, + "realFeelTemperature": { + "minimum": { + "value": 11.3, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 14.7, + "unit": "C", + "unitType": 17 + } + }, + "dewPoint": { + "value": 8.4, + "unit": "C", + "unitType": 17 + }, + "relativeHumidity": 76, + "wind": { + "direction": { + "degrees": 296, + "localizedDescription": "WNW" + }, + "speed": { + "value": 3.7, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "direction": { + "degrees": 206, + "localizedDescription": "SSW" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "visibility": { + "value": 8, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 96, + "hasPrecipitation": true, + "precipitationType": "Rain", + "precipitationIntensity": "Light", + "precipitationProbability": 50, + "thunderstormProbability": 20, + "totalLiquid": { + "value": 0.3, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0.3, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T00:00:00", + "effectiveDate": "2019-11-14T19:00:00-08:00", + "quarter": 2, + "iconCode": 7, + "iconPhrase": "Cloudy", + "phrase": "Cloudy", + "temperature": { + "minimum": { + "value": 9.8, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 10.4, + "unit": "C", + "unitType": 17 + } + }, + "realFeelTemperature": { + "minimum": { + "value": 8.5, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 9.8, + "unit": "C", + "unitType": 17 + } + }, + "dewPoint": { + "value": 7, + "unit": "C", + "unitType": 17 + }, + "relativeHumidity": 81, + "wind": { + "direction": { + "degrees": 172, + "localizedDescription": "S" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "direction": { + "degrees": 174, + "localizedDescription": "S" + }, + "speed": { + "value": 13, + "unit": "km/h", + "unitType": 7 + } + }, + "visibility": { + "value": 10, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 93, + "hasPrecipitation": false, + "precipitationProbability": 25, + "thunderstormProbability": 0, + "totalLiquid": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 0, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + }, + { + "date": "2019-11-14T00:00:00", + "effectiveDate": "2019-11-15T01:00:00-08:00", + "quarter": 3, + "iconCode": 12, + "iconPhrase": "Showers", + "phrase": "Cloudy with a little rain", + "temperature": { + "minimum": { + "value": 8.9, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 9.9, + "unit": "C", + "unitType": 17 + } + }, + "realFeelTemperature": { + "minimum": { + "value": 6.2, + "unit": "C", + "unitType": 17 + }, + "maximum": { + "value": 8.6, + "unit": "C", + "unitType": 17 + } + }, + "dewPoint": { + "value": 6.9, + "unit": "C", + "unitType": 17 + }, + "relativeHumidity": 84, + "wind": { + "direction": { + "degrees": 164, + "localizedDescription": "SSE" + }, + "speed": { + "value": 9.3, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "direction": { + "degrees": 165, + "localizedDescription": "SSE" + }, + "speed": { + "value": 14.8, + "unit": "km/h", + "unitType": 7 + } + }, + "visibility": { + "value": 9, + "unit": "km", + "unitType": 6 + }, + "cloudCover": 99, + "hasPrecipitation": true, + "precipitationType": "Rain", + "precipitationIntensity": "Light", + "precipitationProbability": 59, + "thunderstormProbability": 0, + "totalLiquid": { + "value": 1.4, + "unit": "mm", + "unitType": 3 + }, + "rain": { + "value": 1.4, + "unit": "mm", + "unitType": 3 + }, + "snow": { + "value": 0, + "unit": "cm", + "unitType": 4 + }, + "ice": { + "value": 0, + "unit": "mm", + "unitType": 3 + } + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetSevereWeatherAlerts.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetSevereWeatherAlerts.json new file mode 100644 index 000000000000..3974b02f3a3a --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetSevereWeatherAlerts.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "48.057,-81.091" + }, + "responses": { + "200": { + "body": { + "results": [ + { + "countryCode": "CA", + "alertId": 242621, + "description": { + "localized": "Heat Warning", + "english": "Heat Warning" + }, + "category": "NON-PRECIPITATION", + "priority": 31, + "source": "Environment Canada", + "sourceId": 3, + "alertAreas": [ + { + "name": "Kirkland Lake - Englehart", + "summary": "Heat Warning in effect until Thursday, 3:16 AM EDT. Source: Environment Canada", + "startTime": "2020-06-29T19:44:00+00:00", + "endTime": "2020-07-02T07:16:03+00:00", + "latestStatus": { + "localized": "Continue", + "english": "Continue" + }, + "alertDetails": "\nA heat event continues through Thursday.\n\nDaytime high temperatures in the low thirties with overnight lows near 18 degrees Celsius are expected to continue until Thursday. Humidex values are expected to reach between 36 and 40 today. Cooler air will move into the region Thursday night. \n\nPlease refer to your public forecast for further details on expected temperatures.\n\nHot and humid air can also bring deteriorating air quality and can result in the air quality health index to approach the high risk category.\n\n###\n\nExtreme heat affects everyone.\n\nThe risks are greater for young children, pregnant women, older adults, people with chronic illnesses and people working or exercising outdoors.\n\nWatch for the effects of heat illness: swelling, rash, cramps, fainting, heat exhaustion, heat stroke and the worsening of some health conditions.\n\nPlease continue to monitor alerts and forecasts issued by Environment Canada. To report severe weather, send an email to ONstorm@canada.ca or tweet reports using #ONStorm.\n", + "alertDetailsLanguageCode": "en-CA" + } + ] + }, + { + "countryCode": "CA", + "alertId": 242633, + "description": { + "localized": "Heat Warning", + "english": "Heat Warning" + }, + "category": "NON-PRECIPITATION", + "priority": 31, + "source": "Environment Canada", + "sourceId": 3, + "alertAreas": [ + { + "name": "Kirkland Lake - Englehart", + "summary": "Heat Warning in effect until 9:25 PM EDT. Source: Environment Canada", + "startTime": "2020-07-01T09:25:59+00:00", + "endTime": "2020-07-02T01:25:59+00:00", + "latestStatus": { + "localized": "New", + "english": "New" + }, + "alertDetails": "\nA heat event is expected through Thursday. \n\nDaytime high temperatures in the low thirties on Wednesday and Thursday with overnight lows near 18 degrees Celsius are expected. This heat event may be extended into the weekend with daytime high temperatures near 30 degrees Celsius. \n\nPlease refer to your public forecast for further details on expected temperatures. \n\nHot and humid air can also bring deteriorating air quality and can result in the Air Quality Health Index to approach the high risk category.\n\n###\n\nExtreme heat affects everyone.\n\nThe risks are greater for young children, pregnant women, older adults, people with chronic illnesses and people working or exercising outdoors.\n\nPlease continue to monitor alerts and forecasts issued by Environment Canada. To report severe weather, send an email to ONstorm@canada.ca or tweet reports using #ONStorm.\n", + "alertDetailsLanguageCode": "en-CA" + } + ] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetWeatherAlongRoute.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetWeatherAlongRoute.json new file mode 100644 index 000000000000..8e2d64d78d09 --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/examples/GetWeatherAlongRoute.json @@ -0,0 +1,353 @@ +{ + "parameters": { + "api-version": "1.0", + "format": "json", + "query": "38.907,-77.037,0:38.907,-77.009,10:38.926,-76.928,20:39.033,-76.852,30:39.168,-76.732,40:39.269,-76.634,50:39.287,-76.612,60" + }, + "responses": { + "200": { + "body": { + "summary": { + "iconCode": 35, + "hazards": { + "maxHazardIndex": 0 + } + }, + "waypoints": [ + { + "iconCode": 38, + "shortPhrase": "Mostly cloudy", + "isDayTime": false, + "cloudCover": 70, + "temperature": { + "value": 3.4, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 142 + }, + "speed": { + "value": 2, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 3, + "unit": "km/h", + "unitType": 7 + } + }, + "precipitation": { + "dbz": 0, + "type": "SNOW" + }, + "lightningCount": 0, + "sunGlare": { + "calculatedVehicleHeading": 90, + "glareIndex": 0 + }, + "hazards": { + "maxHazardIndex": 0 + }, + "notifications": [] + }, + { + "iconCode": 38, + "shortPhrase": "Mostly cloudy", + "isDayTime": false, + "cloudCover": 65, + "temperature": { + "value": 3.4, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 166 + }, + "speed": { + "value": 1, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 2, + "unit": "km/h", + "unitType": 7 + } + }, + "precipitation": { + "dbz": 0, + "type": "SNOW" + }, + "lightningCount": 0, + "sunGlare": { + "calculatedVehicleHeading": 77, + "glareIndex": 0 + }, + "hazards": { + "maxHazardIndex": 0 + }, + "notifications": [] + }, + { + "iconCode": 35, + "shortPhrase": "Partly cloudy", + "isDayTime": false, + "cloudCover": 43, + "temperature": { + "value": 3.2, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 163 + }, + "speed": { + "value": 2, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 2, + "unit": "km/h", + "unitType": 7 + } + }, + "precipitation": { + "dbz": 0, + "type": "SNOW" + }, + "lightningCount": 0, + "sunGlare": { + "calculatedVehicleHeading": 44, + "glareIndex": 0 + }, + "hazards": { + "maxHazardIndex": 0 + }, + "notifications": [] + }, + { + "iconCode": 35, + "shortPhrase": "Partly cloudy", + "isDayTime": false, + "cloudCover": 34, + "temperature": { + "value": 1.6, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 189 + }, + "speed": { + "value": 2, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 4, + "unit": "km/h", + "unitType": 7 + } + }, + "precipitation": { + "dbz": 0, + "type": "SNOW" + }, + "lightningCount": 0, + "sunGlare": { + "calculatedVehicleHeading": 32, + "glareIndex": 0 + }, + "hazards": { + "maxHazardIndex": 0 + }, + "notifications": [] + }, + { + "iconCode": 38, + "shortPhrase": "Mostly cloudy", + "isDayTime": false, + "cloudCover": 54, + "temperature": { + "value": 0.5, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 202 + }, + "speed": { + "value": 4, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 5, + "unit": "km/h", + "unitType": 7 + } + }, + "precipitation": { + "dbz": 0, + "type": "SNOW" + }, + "lightningCount": 0, + "sunGlare": { + "calculatedVehicleHeading": 36, + "glareIndex": 0 + }, + "hazards": { + "maxHazardIndex": 0 + }, + "notifications": [] + }, + { + "iconCode": 35, + "shortPhrase": "Partly cloudy", + "isDayTime": false, + "cloudCover": 46, + "temperature": { + "value": 2.4, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 222 + }, + "speed": { + "value": 4, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 5, + "unit": "km/h", + "unitType": 7 + } + }, + "precipitation": { + "dbz": 0, + "type": "SNOW" + }, + "lightningCount": 0, + "sunGlare": { + "calculatedVehicleHeading": 38, + "glareIndex": 0 + }, + "hazards": { + "maxHazardIndex": 0 + }, + "notifications": [] + }, + { + "iconCode": 35, + "shortPhrase": "Partly cloudy", + "isDayTime": false, + "cloudCover": 39, + "temperature": { + "value": 2.3, + "unit": "C", + "unitType": 17 + }, + "wind": { + "direction": { + "degrees": 231 + }, + "speed": { + "value": 4, + "unit": "km/h", + "unitType": 7 + } + }, + "windGust": { + "speed": { + "value": 5, + "unit": "km/h", + "unitType": 7 + } + }, + "precipitation": { + "dbz": 0, + "type": "SNOW" + }, + "lightningCount": 0, + "sunGlare": { + "calculatedVehicleHeading": 43, + "glareIndex": 0 + }, + "hazards": { + "maxHazardIndex": 0 + }, + "notifications": [] + } + ] + } + }, + "400": { + "headers": {}, + "body": { + "error": { + "code": "400 BadRequest", + "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive." + } + } + }, + "401": { + "headers": {}, + "body": { + "error": { + "code": "401 Unauthorized", + "message": "Access denied due to invalid subscription key. Make sure to provide a valid key for an active subscription." + } + } + }, + "403": { + "headers": {}, + "body": { + "error": { + "code": "403 Forbidden", + "message": "Permission, capacity, or authentication issues." + } + } + }, + "404": { + "headers": {}, + "body": { + "error": { + "code": "404 NotFound", + "message": "Not Found: the requested resource could not be found, but it may be available again in the future." + } + } + }, + "500": { + "headers": {}, + "body": { + "error": { + "code": "500 InternalServerError", + "message": "An error occurred while processing the request. Please try again later." + } + } + } + } +} diff --git a/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/weather.json b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/weather.json new file mode 100644 index 000000000000..4cf5e087e01c --- /dev/null +++ b/specification/maps/data-plane/Microsoft.Maps/Weather/preview/1.0/weather.json @@ -0,0 +1,2397 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Weather Service", + "version": "1.0" + }, + "host": "atlas.microsoft.com", + "schemes": [ + "https" + ], + "consumes": [], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure Role Based Access](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure Role based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Note\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* The `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* The Azure role based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs.\n* Usage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently Azure Active Directory [v1.0](https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison) tokens are supported.", + "scopes": { + "user_impersonation": "Impersonates a user's Azure Active Directory account." + } + }, + "apiKeyQuery": { + "type": "apiKey", + "description": "This is a shared key which is provisioned when creating an [Azure Maps resource](https://aka.ms/amauth) through the Azure management plane via Azure portal, Powershell, CLI, Azure SDKs, or REST APIs. With this key, any application is authorized to access all REST APIs. In other words, these can currently be treated as master keys to the account which they are issued for. For publicly exposed applications our recommendation is to use server to server access of Azure Maps REST APIs where this key can be securely stored.", + "name": "subscription-key", + "in": "query" + } + }, + "security": [ + { + "azure_auth": [] + }, + { + "apiKeyQuery": [] + } + ], + "responses": { + "400": { + "description": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "401": { + "description": "Access denied due to invalid subscription key or invalid Azure Active Directory bearer token. Make sure to provide a valid key for an active Azure subscription and Maps resource. Otherwise, verify the [WWW-Authenticate](https://tools.ietf.org/html/rfc6750#section-3.1) header for error code and description of the provided AAD bearer token.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + }, + "headers": { + "WWW-Authenticate": { + "type": "string", + "description": "Bearer realm=\"https://atlas.microsoft.com/\", error=\"invalid_token\", error_description=\"The access token expired\"" + } + } + }, + "403": { + "description": "Permission, capacity, or authentication issues.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "404": { + "description": "Not Found: the requested resource could not be found, but it may be available again in the future.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + }, + "500": { + "description": "An error occurred while processing the request. Please try again later.", + "schema": { + "$ref": "#/definitions/ODataErrorResponse" + } + } + }, + "parameters": { + "ClientId": { + "name": "x-ms-client-id", + "description": "Specifies which account is intended for usage in conjunction with the Azure AD security model. It represents a unique ID for the Azure Maps account and can be retrieved from Azure Maps management plane Account API. To use Azure AD security in Azure Maps see the following [articles](https://aka.ms/amauthdetails) for guidance.", + "type": "string", + "in": "header", + "required": false, + "x-ms-parameter-location": "client" + }, + "SubscriptionKey": { + "name": "subscription-key", + "description": "One of the Azure Maps keys provided from an Azure Map Account. Please refer to this [article](https://docs.microsoft.com/azure/azure-maps/how-to-manage-authentication) for details on how to manage authentication.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "client" + }, + "ApiVersion": { + "name": "api-version", + "description": "Version number of Azure Maps API. Current version is 1.0", + "type": "string", + "in": "query", + "required": true, + "default": "1.0", + "x-ms-parameter-location": "client" + }, + "JsonFormat": { + "name": "format", + "description": "Desired format of the response. Only `json` format is supported.", + "type": "string", + "in": "path", + "required": true, + "enum": [ + "json" + ], + "x-ms-enum": { + "name": "JsonFormat", + "modelAsString": false, + "values": [ + { + "value": "json", + "description": "[The JavaScript Object Notation Data Interchange Format](https://tools.ietf.org/html/rfc8259)" + } + ] + }, + "x-ms-parameter-location": "method" + }, + "WeatherLanguage": { + "name": "language", + "description": "Language in which search results should be returned. Should be one of supported IETF language tags, case insensitive. When data in specified language is not available for a specific field, default language is used. Default value is en-us. \n\nPlease refer to [Supported languages](https://docs.microsoft.com/azure/azure-maps/supported-languages) for details.", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "WeatherUnit": { + "name": "unit", + "description": "Specifies to return the data in either metric units or imperial units. Default value is metric.", + "default": "metric", + "in": "query", + "type": "string", + "required": false, + "enum": [ + "metric", + "imperial" + ], + "x-ms-enum": { + "name": "Unit", + "modelAsString": false, + "values": [ + { + "value": "metric", + "description": "Return data in metric units. Some example units of metric system are Celsius and kilometer." + }, + { + "value": "imperial", + "description": "Return data in imperial units. Some example units of imperial system are Fahrenheit and mile." + } + ] + }, + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/weather/forecast/hourly/{format}": { + "get": { + "x-publish": true, + "description": "**Get Hourly Forecast**\n\n**Applies to**: S0 and S1 pricing tiers.\n\n\nRequest detailed weather forecast by the hour for the next 1, 12, 24 (1 day), 72 (3 days), 120 (5 days), and 240 hours (10 days) for the given the given coordinate location. The API returns details such as temperature, humidity, wind, precipitation, and ultraviolet (UV) index.\n\nIn S0 you can request hourly forecast for the next 1, 12, 24 hours (1 day), and 72 hours (3 days). In S1 you can also request hourly forecast for the next 120 (5 days) and 240 hours (10 days).", + "operationId": "Weather_GetHourlyForecastPreview", + "x-ms-examples": { + "HourlyForecast": { + "$ref": "./examples/GetHourlyForecast.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "Coordinates of the location for which hourly forecast information is requested. The applicable query is specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "in": "query", + "type": "string", + "required": true + }, + { + "$ref": "#/parameters/WeatherUnit" + }, + { + "name": "duration", + "description": "Time frame of the returned weather forecast. By default, the forecast data for next hour will be returned. Available values are\n * `1` - Return forecast data for the next hour. Default value.\n * `12` - Return hourly forecast for next 12 hours.\n * `24` - Return hourly forecast for next 24 hours.\n * `72` - Return hourly forecast for next 72 hours (3 days).\n * `120` - Return hourly forecast for next 120 hours (5 days). Only available in S1 SKU. \n * `240` - Return hourly forecast for next 240 hours (10 days). Only available in S1 SKU.", + "default": 1, + "in": "query", + "type": "integer" + }, + { + "$ref": "#/parameters/WeatherLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HourlyForecastResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/weather/forecast/minute/{format}": { + "get": { + "x-publish": true, + "description": "**Get Minute Forecast**\n \n \n**Applies to**: S1 pricing tier.\n\n\nGet Minute Forecast service returns minute-by-minute forecasts for a given location for the next 120 minutes. Users can request weather forecasts in the interval of 1, 5 and 15 minutes. The response will include details such as the type of precipitation (including rain, snow, or a mixture of both), start time, and precipitation intensity value (dBZ).", + "operationId": "Weather_GetMinuteForecastPreview", + "x-ms-examples": { + "MinuteForecast": { + "$ref": "./examples/GetMinuteForecast.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "Coordinates of the location for which minute forecast information is requested. The applicable query is specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "in": "query", + "type": "string", + "required": true + }, + { + "name": "interval", + "description": "Specifies time interval in minutes for the returned weather forecast. Supported values are\n * `1` - Retrieve forecast for 1-minute intervals. Returned by default.\n * `5` - Retrieve forecasts for 5-minute intervals.\n * `15` - Retrieve forecasts for 15-minute intervals.", + "default": 1, + "in": "query", + "type": "integer" + }, + { + "$ref": "#/parameters/WeatherLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MinuteForecastResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/weather/forecast/quarterDay/{format}": { + "get": { + "x-publish": true, + "description": "**Get Quarter-Day Forecast**\n \n \n**Applies to**: S0 and S1 pricing tiers.\n\n\nService returns detailed weather forecast by quarter-day for the next 1, 5, 10, or 15 days for a given location. Response data is presented by quarters of the day - morning, afternoon, evening, and overnight. Details such as temperature, humidity, wind, precipitation, and UV index are returned.", + "operationId": "Weather_GetQuarterDayForecastPreview", + "x-ms-examples": { + "QuarterDayForecast": { + "$ref": "./examples/GetQuarterDayForecast.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "Coordinates of the location for which quarter-day forecast information is requested. The applicable query is specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "in": "query", + "type": "string", + "required": true + }, + { + "$ref": "#/parameters/WeatherUnit" + }, + { + "name": "duration", + "description": "Specifies for how many days the quester-day forecast responses are returned. Supported values are:\n * `1` - Return forecast data for the next day. Returned by default.\n * `5` - Return forecast data for the next 5 days.\n * `10` - Return forecast data for next 10 days.\n * `15` - Return forecast data for the next 15 days.", + "default": 1, + "in": "query", + "type": "integer" + }, + { + "$ref": "#/parameters/WeatherLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/QuarterDayForecastResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/weather/currentConditions/{format}": { + "get": { + "x-publish": true, + "description": "**Get Current Conditions**\n \n \n**Applies to**: S0 and S1 pricing tiers.\n\n\nGet Current Conditions service returns detailed current weather conditions such as precipitation, temperature and wind for a given coordinate location. Also, observations from the past 6 or 24 hours for a particular location can be retrieved. The basic information returned with the response include details such as observation date and time, brief description of the weather conditions, weather icon, precipitation indicator flags, and temperature. Additional details such as RealFeel™ Temperature and UV index are also returned.", + "operationId": "Weather_GetCurrentConditionsPreview", + "x-ms-examples": { + "CurrentConditions": { + "$ref": "./examples/GetCurrentConditions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "Coordinates of the location for which current conditions information is requested. The applicable query is specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "in": "query", + "type": "string", + "required": true + }, + { + "$ref": "#/parameters/WeatherUnit" + }, + { + "name": "details", + "description": "Return full details for the current conditions. Available values are\n * `true` - Returns full details. By default all details are returned.\n * `false` - Returns a truncated version of the current condition data, which includes observation date time, weather phrase, icon code, precipitation indicator flag, and temperature.", + "default": "true", + "in": "query", + "type": "string" + }, + { + "name": "duration", + "description": "Time frame of the returned weather conditions. By default, the most current weather conditions will be returned. Default value is 0. Supported values are:\n * `0` - Return the most current weather conditions.\n * `6` - Return weather conditions from past 6 hours.\n * `24` - Return weather conditions from past 24 hours.", + "default": 0, + "in": "query", + "type": "integer" + }, + { + "$ref": "#/parameters/WeatherLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CurrentConditionsResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/weather/forecast/daily/{format}": { + "get": { + "x-publish": true, + "description": "**Get Daily Forecast**\n \n \n**Applies to**: S0 and S1 pricing tiers.\n\n\nThe service returns detailed weather forecast such as temperature and wind by day for the next 1, 5, 10, 15, 25, or 45 days for a given coordinate location. The response include details such as temperature, wind, precipitation, air quality, and UV index.\n\nIn S0 you can request daily forecast for the next 1, 5, 10, and 15 days. In S1 you can also request daily forecast for the next 25 days, and 45 days.", + "operationId": "Weather_GetDailyForecastPreview", + "x-ms-examples": { + "DailyForecast": { + "$ref": "./examples/GetDailyForecast.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "Coordinates of the location for which current conditions information is requested. The applicable query is specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "in": "query", + "type": "string", + "required": true + }, + { + "$ref": "#/parameters/WeatherUnit" + }, + { + "name": "duration", + "description": "Specifies for how many days the daily forecast responses are returned. Available values are\n * `1` - Return forecast data for the next day. Returned by default.\n * `5` - Return forecast data for the next 5 days.\n * `10` - Return forecast data for the next 10 days.\n * `25` - Return forecast data for the next 25 days. Only available in S1 SKU.\n * `45` - Return forecast data for the next 45 days. Only available in S1 SKU.", + "default": 1, + "in": "query", + "type": "integer" + }, + { + "$ref": "#/parameters/WeatherLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DailyForecastResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/weather/route/{format}": { + "get": { + "x-publish": true, + "description": "**Get Weather along route**\n \n \n **Applies to**: S1 pricing tier.\n\n Weather along a route API returns hyper local (one kilometer or less), up-to-the-minute weather nowcasts, weather hazard assessments, and notifications along a route described as a sequence of waypoints. \n This includes a list of weather hazards affecting the waypoint or route, and the aggregated hazard index for each waypoint might be used to paint each portion of a route according to how safe it is for the driver. When submitting the waypoints, it is recommended to stay within, or close to, the distance that can be traveled within 120-mins or shortly after. Data is updated every five minutes. \n \n The service supplements Azure Maps [Route Service](https://docs.microsoft.com/rest/api/maps/route) that allows you to first request a route between an origin and a destination and use that as an input for Weather Along Route endpoint.\n \n In addition, the service supports scenarios to generate weather notifications for waypoints that experience an increase in intensity of a weather hazard. For example, if the vehicle is expected to begin experiencing heavy rain as it reaches a waypoint, a weather notification for heavy rain will be generated for that waypoint allowing the end product to display a heavy rain notification before the driver reaches that waypoint. \n The trigger for when to display the notification for a waypoint could be based, for example, on a [geofence](https://docs.microsoft.com/azure/azure-maps/tutorial-iot-hub-maps), or selectable distance to the waypoint.\n\n The API covers all regions of the planet except latitudes above Greenland and Antarctica.", + "operationId": "Weather_GetWeatherAlongRoutePreview", + "x-ms-examples": { + "WeatherAlongRoute": { + "$ref": "./examples/GetWeatherAlongRoute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "Coordinates through which the route is calculated, separated by colon (:) and entered in chronological order. A minimum of two waypoints is required. A single API call may contain up to 60 waypoints. \nA waypoint indicates location, ETA, and optional heading: latitude,longitude,ETA,heading, where\n * `Latitude` - Latitude coordinate in decimal degrees.\n * `Longitude` - Longitude coordinate in decimal degrees.\n * `ETA (estimated time of arrival)` - The number of minutes from the present time that it will take for the vehicle to reach the waypoint. Allowed range is from 0.0 to 120.0 minutes.\n * `Heading` - An optional value indicating the vehicle heading as it passes the waypoint. Expressed in clockwise degrees relative to true north. This is issued to calculate sun glare as a driving hazard. Allowed range is from 0.0 to 360.0 degrees. If not provided, a heading will automatically be derived based on the position of neighboring waypoints.\n\nIt is recommended to stay within, or close to, the distance that can be traveled within 120-mins or shortly after. This way a more accurate assessment can be provided for the trip and prevent isolated events not being captured between waypoints. Information can and should be updated along the route (especially for trips greater than 2 hours) to continuously pull new waypoints moving forward, but also to ensure that forecast information for content such as precipitation type and intensity is accurate as storms develop and dissipate over time.", + "in": "query", + "type": "string", + "required": true + }, + { + "$ref": "#/parameters/WeatherLanguage" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WeatherAlongRouteResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/weather/severe/alerts/{format}": { + "get": { + "x-publish": true, + "description": "**Get Severe Weather Alerts**\n\n**Applies to**: S0 and S1 pricing tiers.\n\nSevere weather phenomenon can significantly impact our everyday life and business operations. For example, severe weather conditions such as tropical storms, high winds or flooding can close roads and force logistics companies to reroute their fleet causing delays in reaching destinations and breaking the cold chain of refrigerated food products.  Azure Maps Severe Weather Alerts API returns the severe weather alerts that are available worldwide from both official Government Meteorological Agencies and leading global to regional weather alert providers. The service can return details such as alert type, category, level and detailed description about the active severe alerts for the requested location, like hurricanes, thunderstorms, lightning, heat waves or forest fires.", + "operationId": "Weather_GetSevereWeatherAlertsPreview", + "x-ms-examples": { + "SevereWeatherAlert": { + "$ref": "./examples/GetSevereWeatherAlerts.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "Coordinates of the location for which severe weather alerts are requested. The applicable query is specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "in": "query", + "type": "string", + "required": true + }, + { + "$ref": "#/parameters/WeatherLanguage" + }, + { + "name": "details", + "description": "Return full details for the severe weather alerts. Available values are\n * `true` - Returns full details. By default all details are returned.\n * `false` - Returns a truncated version of the alerts data, which excludes the area-specific full description of alert details (`alertDetails`).", + "default": "true", + "in": "query", + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK,", + "schema": { + "$ref": "#/definitions/SevereWeatherAlertsResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + }, + "/weather/indices/daily/{format}": { + "get": { + "x-publish": true, + "description": "**Get Daily Indices Preview**\n\n**Applies to**: S0 and S1 pricing tiers.\n\nThere may be times when you want to know if the weather conditions are optimal for a specific activity, for example, for outdoor construction, indoor activities, running or farming including soil moisture information. Azure Maps Indices API returns index values that will guide end users to plan future activities. For example, a health mobile application can notify users that today is good weather for running or for other outdoors activities like for playing golf, and retail stores can optimize their digital marketing campaigns based on predicted index values. The service returns in daily indices values for current and next 5, 10 and 15 days starting from current day.", + "operationId": "Weather_GetDailyIndicesPreview", + "x-ms-examples": { + "DailyIndices": { + "$ref": "./examples/GetDailyIndices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ClientId" + }, + { + "$ref": "#/parameters/SubscriptionKey" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JsonFormat" + }, + { + "name": "query", + "description": "Coordinates of the location for which daily indices are requested. The applicable query is specified as a comma separated string composed by latitude followed by longitude e.g. \"47.641268,-122.125679\".", + "in": "query", + "type": "string", + "required": true + }, + { + "$ref": "#/parameters/WeatherLanguage" + }, + { + "name": "duration", + "description": "Specifies for how many days the daily indices are returned. By default, the indices data for the current day will be returned. When requesting future indices data, the current day is included in the response as day 1. Available values are\n * `1` - Return daily index data for the current day. Default value.\n * `5` - Return 5 days of daily index data starting from the current day.\n * `10` - Return 10 days of daily index data starting from the current day.\n * `15` - Return 15 days of daily index data starting from the current day.", + "default": 1, + "in": "query", + "type": "integer" + }, + { + "name": "indexId", + "description": "Numeric index identifier that can be used for restricting returned results to the corresponding index type. Cannot be paired with `indexGroupId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported indices.", + "in": "query", + "type": "integer" + }, + { + "name": "indexGroupId", + "description": "Numeric index group identifier that can be used for restricting returned results to the corresponding subset of indices (index group). Cannot be paired with `indexId`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported index groups.", + "in": "query", + "type": "integer" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DailyIndicesResponse" + } + }, + "400": { + "$ref": "#/responses/400" + }, + "401": { + "$ref": "#/responses/401" + }, + "403": { + "$ref": "#/responses/403" + }, + "404": { + "$ref": "#/responses/404" + }, + "500": { + "$ref": "#/responses/500" + } + } + } + } + }, + "definitions": { + "ODataErrorResponse": { + "type": "object", + "description": "This response object is returned when an error occurs in the Maps API.", + "properties": { + "error": { + "$ref": "#/definitions/ODataError" + } + } + }, + "ODataError": { + "type": "object", + "description": "This object is returned when an error occurs in the Maps API.", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The ODataError code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "If available, a human readable description of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + } + }, + "target": { + "type": "string", + "readOnly": true, + "description": "If available, the target causing the error." + } + } + }, + "WeatherUnit": { + "type": "object", + "properties": { + "value": { + "type": "number", + "format": "float", + "description": "Rounded value." + }, + "unit": { + "type": "string", + "description": "Type of unit for the returned value." + }, + "unitType": { + "type": "integer", + "format": "int32", + "description": "Numeric ID value associated with the type of unit being displayed. Can be used for unit translation. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + } + } + }, + "Wind": { + "type": "object", + "description": "Wind details being returned including speed and direction.", + "properties": { + "direction": { + "$ref": "#/definitions/WindDirection", + "description": "Wind direction" + }, + "speed": { + "$ref": "#/definitions/WindSpeed", + "description": "Speed of the wind in specified unit." + } + } + }, + "WindDirection": { + "type": "object", + "properties": { + "degrees": { + "type": "integer", + "format": "int32", + "description": "Wind direction in Azimuth degrees, starting at true North and continuing in clockwise direction. North is 0 degrees, east is 90 degrees, south is 180 degrees, west is 270 degrees. Possible values 0-359." + }, + "localizedDescription": { + "type": "string", + "description": "Direction abbreviation in the specified language." + } + }, + "description": "Wind direction" + }, + "WindSpeed": { + "type": "object", + "description": "Speed of wind in specified unit.", + "properties": { + "value": { + "type": "number", + "format": "float", + "description": "Rounded value of the speed." + }, + "unit": { + "type": "string", + "description": "Type of unit for the speed value." + }, + "unitType": { + "type": "integer", + "format": "int32", + "description": "Numeric ID value associated with the type of unit being displayed. Can be used for unit translation. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + } + } + }, + "WeatherUnitRange": { + "type": "object", + "description": "Returned temperature values.", + "properties": { + "minimum": { + "$ref": "#/definitions/WeatherUnit", + "description": "Minimum temperature for the time period." + }, + "maximum": { + "$ref": "#/definitions/WeatherUnit", + "description": "Maximum temperature for the time period" + } + } + }, + "UVIndex": { + "type": "integer", + "format": "int32", + "description": "Measure of the strength of the ultraviolet radiation from the sun. Supported values are:\n * `0-2` - Low danger from the sun's UV rays or the average person.\n * `3-5` - Moderate risk of harm from unprotected sun exposure.\n * `6-7` - High risk of harm from unprotected sun exposure.\n * `8-10` - Very high risk of harm from unprotected sun exposure.\n * `11+` - Extreme risk of harm from unprotected sun exposure." + }, + "HazardIndex": { + "type": "integer", + "format": "int32", + "description": "A severity/hazard index.\n * `0` - No hazard.\n * `1` - Be informed, be aware.\n * `2` - Pay attention, be prepared.\n * `3` - Take action.\n * `4` - Life threatening, emergency." + }, + "HourlyForecast": { + "type": "object", + "properties": { + "date": { + "type": "string", + "description": "Date and time of the forecast in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "iconCode": { + "type": "integer", + "format": "int32", + "description": "Numeric value representing an image that displays the `iconPhrase`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + }, + "iconPhrase": { + "type": "string", + "description": "Phrase description of the weather icon." + }, + "hasPrecipitation": { + "type": "boolean", + "description": "Indicates the presence or absence of precipitation. True indicates the presence of precipitation, false indicates the absence of precipitation." + }, + "isDaylight": { + "type": "boolean", + "description": "Specifies whether or not it is daylight. True indicates day light." + }, + "temperature": { + "$ref": "#/definitions/WeatherUnit", + "description": "Temperature being returned." + }, + "realFeelTemperature": { + "$ref": "#/definitions/WeatherUnit", + "description": "RealFeel™ Temperature being returned. Describes what the temperature really feels like in the shade." + }, + "wetBulbTemperature": { + "$ref": "#/definitions/WeatherUnit", + "description": "The temperature to which air may be cooled by evaporating water into it at constant pressure until it reaches saturation." + }, + "dewPoint": { + "$ref": "#/definitions/WeatherUnit", + "description": "The dewpoint temperature in specified unit. The dewpoint temperature is the temperature that the air must be cooled to in order to reach saturation." + }, + "wind": { + "$ref": "#/definitions/Wind", + "description": "Wind details being returned including speed and direction." + }, + "windGust": { + "$ref": "#/definitions/Wind", + "description": "Wind gust. Wind gust is a sudden, brief increase in speed of the wind." + }, + "relativeHumidity": { + "type": "integer", + "format": "int32", + "description": "Relative humidity is the amount of water vapor present in air expressed as a percentage of the amount needed for saturation at the same temperature." + }, + "visibility": { + "$ref": "#/definitions/WeatherUnit", + "description": "Visibility in specified unit. A measure of the distance at which an object or light can be clearly discerned." + }, + "ceiling": { + "$ref": "#/definitions/WeatherUnit", + "description": "Cloud ceiling in specified unit. The ceiling is a measurement of the height of the base of the lowest clouds." + }, + "uvIndex": { + "$ref": "#/definitions/UVIndex" + }, + "uvIndexPhrase": { + "type": "string", + "description": "Phrase associated with the `uvIndex`." + }, + "precipitationProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of precipitation. For example, '20'." + }, + "rainProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of rain. For example, '50'." + }, + "snowProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of snow. For example, '50'." + }, + "iceProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of snow. For example, '5'." + }, + "totalLiquid": { + "$ref": "#/definitions/WeatherUnit", + "description": "Total liquid equivalent of precipitation during the forecast period." + }, + "rain": { + "$ref": "#/definitions/WeatherUnit", + "description": "Rain" + }, + "snow": { + "$ref": "#/definitions/WeatherUnit", + "description": "Snow" + }, + "ice": { + "$ref": "#/definitions/WeatherUnit", + "description": "Ice" + }, + "cloudCover": { + "type": "integer", + "format": "int32", + "description": "Percent representing cloud cover." + } + } + }, + "HourlyForecastResponse": { + "type": "object", + "properties": { + "forecasts": { + "type": "array", + "description": "Forecast data for each returned hour.", + "items": { + "$ref": "#/definitions/HourlyForecast" + } + } + } + }, + "MinuteForecastSummary": { + "type": "object", + "properties": { + "briefPhrase60": { + "type": "string", + "description": "Summary phrase for the next 60 minutes. Phrase length is approximately 60 characters." + }, + "shortPhrase": { + "type": "string", + "description": "Short summary phrase for the next 120 minutes. Phrase length is approximately 25 characters." + }, + "briefPhrase": { + "type": "string", + "description": "Summary phrase for the next 120 minutes. Phrase length is approximately 60 characters." + }, + "longPhrase": { + "type": "string", + "description": "Long summary phrase for the next 120 minutes. Phrase length is 60+ characters." + }, + "iconCode": { + "type": "integer", + "format": "int32", + "description": "Numeric value representing an image that displays the `iconPhrase`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + } + }, + "description": "Phrase summaries for the entire forecast period." + }, + "IntervalSummary": { + "type": "object", + "properties": { + "startMinute": { + "type": "integer", + "format": "int32", + "description": "The first minute to which the summary applies." + }, + "endMinute": { + "type": "integer", + "format": "int32", + "description": "The last minute to which the summary applies." + }, + "totalMinutes": { + "type": "integer", + "format": "int32", + "description": "The number of minutes for which the summary applies." + }, + "shortPhrase": { + "type": "string", + "description": "Short summary phrase. Phrase length is approximately 25 characters." + }, + "briefPhrase": { + "type": "string", + "description": "Brief summary phrase. Phrase length is approximately 60 characters." + }, + "longPhrase": { + "type": "string", + "description": "Long summary phrase. Phrase length is 60+ characters." + }, + "iconCode": { + "type": "integer", + "format": "int32", + "description": "Numeric value representing an image that displays the `iconPhrase`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + } + } + }, + "Interval": { + "type": "object", + "properties": { + "startTime": { + "type": "string", + "description": "The date and time for the start of the interval in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "minute": { + "type": "integer", + "format": "int32", + "description": "The first minute for the interval." + }, + "dbz": { + "type": "number", + "format": "double", + "description": "A unit that represents forecasted precipitation intensity." + }, + "shortPhrase": { + "type": "string", + "description": "A short phrase describing precipitation condition for the interval." + }, + "threshold": { + "type": "string", + "description": "Key that specifies the threshold value. Along with precipitationType, can be used to determine the simplifiedColor. If dbz is zero, not present in the response." + }, + "color": { + "$ref": "#/definitions/Color", + "description": "The full spectrum color that maps to the dBZ (decibel relative to Z). If dbz is zero, color is not present in the response." + }, + "simplifiedColor": { + "$ref": "#/definitions/Color", + "description": "The band color that maps to the precipitation type and threshold. If dbz is zero, not present in the response." + }, + "precipitationType": { + "type": "string", + "description": "Specifies the type of precipitation (\"rain\" \"snow\" \"ice\" or \"mix\"). If dbz is zero, precipitationType is not present in the response." + }, + "iconCode": { + "type": "integer", + "format": "int32", + "description": "Numeric value representing an image that displays the `iconPhrase`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + }, + "cloudCover": { + "type": "integer", + "format": "int32", + "description": "Percent representing cloud cover." + } + } + }, + "MinuteForecastResponse": { + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/MinuteForecastSummary" + }, + "intervalSummaries": { + "type": "array", + "items": { + "$ref": "#/definitions/IntervalSummary" + }, + "description": "Summary information for each interval in the forecast. The Summaries breaks down each potential interval where precipitation starts and stops." + }, + "intervals": { + "type": "array", + "description": "Forecast data for each interval in the forecast.", + "items": { + "$ref": "#/definitions/Interval" + } + } + } + }, + "Color": { + "type": "object", + "properties": { + "red": { + "type": "integer", + "format": "int32", + "description": "Red component of the RGB value." + }, + "green": { + "type": "integer", + "format": "int32", + "description": "Green component of the RGB value." + }, + "blue": { + "type": "integer", + "format": "int32", + "description": "Blue component of the RGB value" + }, + "hex": { + "type": "string", + "description": "Hexadecimal color value." + } + } + }, + "QuarterDayForecast": { + "type": "object", + "properties": { + "date": { + "type": "string", + "description": "Date and time of the forecast in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "effectiveDate": { + "type": "string", + "description": "Date and time of the beginning of the forecast quarter displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "quarter": { + "description": "Quarter of the day.", + "type": "integer", + "format": "int32", + "enum": [ + 0, + 1, + 2, + 3 + ], + "x-ms-enum": { + "name": "Quarter", + "modelAsString": false, + "values": [ + { + "value": 0, + "description": "7:00 am - 1:00 pm / 7:00- 13:00" + }, + { + "value": 1, + "description": "1:00 pm - 7:00 pm/ 13:00- 19:00" + }, + { + "value": 2, + "description": "7:00 pm - 1:00 am/ 19:00 - 01:00" + }, + { + "value": 3, + "description": "1:00 am - 7:00 am/ 01:00 - 07:00" + } + ] + } + }, + "iconCode": { + "type": "integer", + "format": "int32", + "description": "Numeric value representing an image that displays the `iconPhrase`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + }, + "iconPhrase": { + "type": "string", + "description": "Phrase description of the icon. Displayed in specified language. For example, 'Sunny'." + }, + "phrase": { + "type": "string", + "description": "Short summary phrase summary for quarter." + }, + "temperature": { + "$ref": "#/definitions/WeatherUnitRange", + "description": "Temperature values for the quarter." + }, + "realFeelTemperature": { + "$ref": "#/definitions/WeatherUnitRange", + "description": "RealFeel™ Temperature values for the quarter." + }, + "dewPoint": { + "$ref": "#/definitions/WeatherUnit", + "description": "The dewpoint temperature in specified unit. The dewpoint temperature is the temperature that the air must be cooled to in order to reach saturation." + }, + "relativeHumidity": { + "type": "integer", + "format": "int32", + "description": "Relative humidity is the amount of water vapor present in air expressed as a percentage of the amount needed for saturation at the same temperature." + }, + "wind": { + "$ref": "#/definitions/Wind", + "description": "Wind details being returned including speed and direction." + }, + "windGust": { + "$ref": "#/definitions/Wind", + "description": "Wind gust. Wind gust is a sudden, brief increase in speed of the wind." + }, + "visibility": { + "$ref": "#/definitions/WeatherUnit", + "description": "Visibility in specified unit. A measure of the distance at which an object or light can be clearly discerned." + }, + "cloudCover": { + "type": "integer", + "format": "int32", + "description": "Percent representing cloud cover." + }, + "hasPrecipitation": { + "type": "boolean", + "description": "Indicates the presence or absence of precipitation. True indicates the presence of precipitation, false indicates the absence of precipitation." + }, + "precipitationType": { + "type": "string", + "description": "Specifies the type of precipitation (\"rain\" \"snow\" \"ice\" or \"mix\"). If dbz = zero, precipitationType is not present in the response." + }, + "precipitationIntensity": { + "type": "string", + "description": "Description of the intensity." + }, + "precipitationProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of precipitation. For example, '20'." + }, + "thunderstormProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of a thunderstorm. For example, '10'." + }, + "totalLiquid": { + "$ref": "#/definitions/WeatherUnit", + "description": "Total liquid equivalent of precipitation during the forecast period." + }, + "rain": { + "$ref": "#/definitions/WeatherUnit", + "description": "Rain" + }, + "snow": { + "$ref": "#/definitions/WeatherUnit", + "description": "Snow" + }, + "ice": { + "$ref": "#/definitions/WeatherUnit", + "description": "Ice" + } + } + }, + "QuarterDayForecastResponse": { + "type": "object", + "properties": { + "forecasts": { + "type": "array", + "description": "Forecast data for each quarter in the response.", + "items": { + "$ref": "#/definitions/QuarterDayForecast" + } + } + } + }, + "CurrentConditionsResponse": { + "type": "object", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/CurrentConditions" + } + } + } + }, + "PressureTendency": { + "type": "object", + "properties": { + "localizedDescription": { + "type": "string", + "description": "Description of the pressure tendency in specified language" + }, + "code": { + "type": "string", + "description": "Pressure tendency code regardless of language. One of F=Falling, S=Steady, R=Rising." + } + } + }, + "PrecipitationSummary": { + "type": "object", + "properties": { + "pastHour": { + "$ref": "#/definitions/WeatherUnit", + "description": "The amount of precipitation (liquid equivalent) that has fallen in the past hour." + }, + "past3Hours": { + "$ref": "#/definitions/WeatherUnit", + "description": "The amount of precipitation (liquid equivalent) that has fallen in the past three hours." + }, + "past6Hours": { + "$ref": "#/definitions/WeatherUnit", + "description": "The amount of precipitation (liquid equivalent) that has fallen in the past six hours. Contains Metric and Imperial Values." + }, + "past9Hours": { + "$ref": "#/definitions/WeatherUnit", + "description": "The amount of precipitation (liquid equivalent) that has fallen in the past nine hours." + }, + "past12Hours": { + "$ref": "#/definitions/WeatherUnit", + "description": "The amount of precipitation (liquid equivalent) that has fallen in the past 12 hours." + }, + "past18Hours": { + "$ref": "#/definitions/WeatherUnit", + "description": "The amount of precipitation (liquid equivalent) that has fallen in the past 18 hours." + }, + "past24Hours": { + "$ref": "#/definitions/WeatherUnit", + "description": "The amount of precipitation (liquid equivalent) that has fallen in the past 24 hours." + } + } + }, + "TemperatureSummary": { + "type": "object", + "properties": { + "past6Hours": { + "type": "object", + "properties": { + "minimum": { + "$ref": "#/definitions/WeatherUnit", + "description": "minimum" + }, + "maximum": { + "$ref": "#/definitions/WeatherUnit", + "description": "maximum" + } + }, + "description": "Summary of temperature fluctuations over the past 6 hours." + }, + "past12Hours": { + "type": "object", + "properties": { + "minimum": { + "$ref": "#/definitions/WeatherUnit", + "description": "minimum" + }, + "maximum": { + "$ref": "#/definitions/WeatherUnit", + "description": "maximum" + } + }, + "description": "Summary of temperature fluctuations over the past 12 hours." + }, + "past24Hours": { + "type": "object", + "properties": { + "minimum": { + "$ref": "#/definitions/WeatherUnit", + "description": "minimum" + }, + "maximum": { + "$ref": "#/definitions/WeatherUnit", + "description": "maximum" + } + }, + "description": "Summary of temperature fluctuations over the past 24 hours." + } + } + }, + "CurrentConditions": { + "type": "object", + "properties": { + "dateTime": { + "type": "string", + "description": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "phrase": { + "type": "string", + "description": "Phrase description of the current weather condition. Displayed in specified language." + }, + "iconCode": { + "type": "integer", + "format": "int32", + "description": "Numeric value representing an image that displays the `iconPhrase`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + }, + "hasPrecipitation": { + "type": "boolean", + "description": "Indicates the presence or absence of precipitation. True indicates the presence of precipitation, false indicates the absence of precipitation." + }, + "isDayTime": { + "type": "boolean", + "description": "Indicates the time of the day. True indicates 'day',', false indicates 'night." + }, + "temperature": { + "$ref": "#/definitions/WeatherUnit", + "description": "Temperature being returned." + }, + "realFeelTemperature": { + "$ref": "#/definitions/WeatherUnit", + "description": "RealFeel™ Temperature being returned." + }, + "realFeelTemperatureShade": { + "$ref": "#/definitions/WeatherUnit", + "description": "RealFeel™ Temperature being returned. Describes what the temperature really feels like in the shade." + }, + "relativeHumidity": { + "type": "integer", + "format": "int32", + "description": "Relative humidity is the amount of water vapor present in air expressed as a percentage of the amount needed for saturation at the same temperature." + }, + "dewPoint": { + "$ref": "#/definitions/WeatherUnit", + "description": "The dewpoint temperature in specified unit. The dewpoint temperature is the temperature that the air must be cooled to in order to reach saturation." + }, + "wind": { + "$ref": "#/definitions/Wind", + "description": "Wind details being returned including speed and direction." + }, + "windGust": { + "$ref": "#/definitions/Wind", + "description": "Wind gust. Wind gust is a sudden, brief increase in speed of the wind." + }, + "uvIndex": { + "$ref": "#/definitions/UVIndex" + }, + "uvIndexPhrase": { + "type": "string", + "description": "Phrase associated with the `uvIndex`." + }, + "visibility": { + "$ref": "#/definitions/WeatherUnit", + "description": "Visibility in specified unit. A measure of the distance at which an object or light can be clearly discerned." + }, + "obstructionsToVisibility": { + "type": "string", + "description": "Cause of limited visibility." + }, + "cloudCover": { + "type": "integer", + "format": "int32", + "description": "Percent representing cloud cover." + }, + "ceiling": { + "$ref": "#/definitions/WeatherUnit", + "description": "Cloud ceiling in specified unit. The ceiling is a measurement of the height of the base of the lowest clouds." + }, + "pressure": { + "$ref": "#/definitions/WeatherUnit", + "description": "Atmospheric pressure in specified unit." + }, + "pressureTendency": { + "$ref": "#/definitions/PressureTendency", + "description": "Atmospheric pressure change." + }, + "past24HourTemperatureDeparture": { + "$ref": "#/definitions/WeatherUnit", + "description": "Departure from the temperature observed 24 hours ago in specified unit." + }, + "apparentTemperature": { + "$ref": "#/definitions/WeatherUnit", + "description": "Perceived outdoor temperature caused by the combination of air temperature, relative humidity, and wind speed in specified unit." + }, + "windChillTemperature": { + "$ref": "#/definitions/WeatherUnit", + "description": "Perceived air temperature on exposed skin due to wind." + }, + "wetBulbTemperature": { + "$ref": "#/definitions/WeatherUnit", + "description": "The temperature to which air may be cooled by evaporating water into it at constant pressure until it reaches saturation." + }, + "precipitationSummary": { + "$ref": "#/definitions/PrecipitationSummary", + "description": "Summary of precipitation amounts over the past 24 hours." + }, + "temperatureSummary": { + "$ref": "#/definitions/TemperatureSummary", + "description": "Summary of temperature fluctuations over the past 6, 12, and 24 hours." + } + } + }, + "DailyForecastSummary": { + "type": "object", + "properties": { + "startDate": { + "type": "string", + "description": "Date and time that the summary is in effect, displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "endDate": { + "type": "string", + "description": "Date and time that the summary period ends, displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "severity": { + "type": "integer", + "format": "int32", + "description": "severity" + }, + "phrase": { + "type": "string", + "description": "Summary phrase of the daily forecast. Displayed in specified language." + }, + "category": { + "type": "string", + "description": "one or 2 word(s) to summarize the phrase." + } + }, + "description": "Summary for the main conditions for the requested time period. Notice that summary can cover only part of the time period." + }, + "DegreeDaySummary": { + "type": "object", + "properties": { + "heating": { + "$ref": "#/definitions/WeatherUnit", + "description": "Number of degrees that the mean temperature is below 65 degrees F/ 18 degree C." + }, + "cooling": { + "$ref": "#/definitions/WeatherUnit", + "description": "Number of degrees that the mean temperature is above 65 degrees F/ 18 degree C." + } + } + }, + "AirAndPollen": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the pollen or pollutant. For example, grass, mold, weed, air quality, tree and UV index." + }, + "value": { + "type": "integer", + "format": "int32", + "description": "Value of the given type above. Values associated with mold, grass, weed and tree are in units of parts per cubic meter. Both air quality and UV are indices, so they are unitless." + }, + "category": { + "type": "string", + "description": "Category of the air quality or pollution type. For example, low, high, good, moderate, unhealthy, hazardous." + }, + "categoryValue": { + "type": "integer", + "format": "int32", + "description": "Value associated with the air quality or pollution category. These values range from 1 to 6. 1 implying good conditions, 6 implying hazardous conditions." + }, + "type": { + "type": "string", + "description": "Only exists for air quality. Examples include ozone and particle pollution." + } + } + }, + "DailyForecast": { + "type": "object", + "properties": { + "date": { + "type": "string", + "description": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "temperature": { + "$ref": "#/definitions/WeatherUnitRange", + "description": "Temperature values for the day." + }, + "realFeelTemperature": { + "$ref": "#/definitions/WeatherUnitRange", + "description": "RealFeel™ Temperature being returned." + }, + "realFeelTemperatureShade": { + "$ref": "#/definitions/WeatherUnitRange", + "description": "RealFeel™ Temperature being returned. Describes what the temperature really feels like in the shade." + }, + "hoursOfSun": { + "type": "number", + "format": "float", + "description": "Hours of sun." + }, + "degreeDaySummary": { + "$ref": "#/definitions/DegreeDaySummary", + "description": "Summary of Heating Degree Day or Cooling Degree Day information" + }, + "airAndPollen": { + "type": "array", + "items": { + "$ref": "#/definitions/AirAndPollen" + }, + "description": "airAndPollen" + }, + "day": { + "$ref": "#/definitions/DayOrNight", + "description": "Day" + }, + "night": { + "$ref": "#/definitions/DayOrNight", + "description": "Night" + }, + "sources": { + "type": "array", + "items": { + "type": "string", + "description": "Source(s) of the forecast data." + } + } + } + }, + "DailyForecastResponse": { + "type": "object", + "properties": { + "summary": { + "$ref": "#/definitions/DailyForecastSummary" + }, + "forecasts": { + "type": "array", + "description": "Forecast data for each requested day.", + "items": { + "$ref": "#/definitions/DailyForecast" + } + } + } + }, + "LocalSource": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int32", + "description": "Numeric identifier, unique to the local data provider." + }, + "name": { + "type": "string", + "description": "Name of the local data provider. Name is displayed in the language specified by language code in URL, if available. Otherwise, Name is displayed in English or the language in which the name was provided." + }, + "weatherCode": { + "type": "string", + "description": "Weather code provided by the local data provider. This weather code allows the forecast to be matched to icons provided by the local data provider instead of Azure Maps icons." + } + } + }, + "DayOrNight": { + "type": "object", + "properties": { + "iconCode": { + "type": "integer", + "format": "int32", + "description": "Numeric value representing an image that displays the `iconPhrase`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + }, + "iconPhrase": { + "type": "string", + "description": "Phrase description of the icon. Displayed in specified language. For example, 'Sunny'." + }, + "localSource": { + "$ref": "#/definitions/LocalSource" + }, + "hasPrecipitation": { + "type": "boolean", + "description": "Indicates the presence or absence of precipitation. True indicates the presence of precipitation, false indicates the absence of precipitation." + }, + "precipitationType": { + "type": "string", + "description": "Specifies the type of precipitation (\"rain\" \"snow\" \"ice\" or \"mix\"). If dbz = zero, precipitationType is not present in the response." + }, + "precipitationIntensity": { + "type": "string", + "description": "Description of the intensity." + }, + "shortPhrase": { + "type": "string", + "description": "Phrase description of the forecast in specified language. Azure Maps attempts to keep this phrase under 30 characters in length, but some languages/weather events may result in a longer phrase length, exceeding 30 characters." + }, + "longPhrase": { + "type": "string", + "description": "Phrase description of the forecast in specified language. Azure Maps attempts to keep this phrase under 100 characters in length, but some languages/weather events may result in a longer phrase length, exceeding 100 characters." + }, + "precipitationProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of precipitation. For example, '20'." + }, + "thunderstormProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of a thunderstorm. For example, '80'." + }, + "rainProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of rain. For example, '40'." + }, + "snowProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of snow. For example, '30'." + }, + "iceProbability": { + "type": "integer", + "format": "int32", + "description": "Percent representing the probability of ice. For example, '30'." + }, + "wind": { + "$ref": "#/definitions/Wind", + "description": "Wind details being returned including speed and direction." + }, + "windGust": { + "$ref": "#/definitions/Wind", + "description": "Wind gust. Wind gust is a sudden, brief increase in speed of the wind." + }, + "totalLiquid": { + "$ref": "#/definitions/WeatherUnit", + "description": "Total liquid equivalent of precipitation during the forecast period." + }, + "rain": { + "$ref": "#/definitions/WeatherUnit", + "description": "Rain" + }, + "snow": { + "$ref": "#/definitions/WeatherUnit", + "description": "Snow" + }, + "ice": { + "$ref": "#/definitions/WeatherUnit", + "description": "Ice" + }, + "hoursOfPrecipitation": { + "type": "number", + "format": "float", + "description": "Hours of precipitation" + }, + "hoursOfRain": { + "type": "number", + "format": "float", + "description": "Hours of rain." + }, + "hoursOfSnow": { + "type": "number", + "format": "float", + "description": "Hours of snow." + }, + "hoursOfIce": { + "type": "number", + "format": "float", + "description": "Hours of ice." + }, + "cloudCover": { + "type": "integer", + "format": "int32", + "description": "Percent representing cloud cover." + } + } + }, + "WeatherAlongRouteSummary": { + "type": "object", + "properties": { + "iconCode": { + "type": "integer", + "format": "int32", + "description": "Numeric value representing an image that displays the `iconPhrase`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + }, + "hazards": { + "$ref": "#/definitions/Hazards" + } + } + }, + "WeatherAlongRouteResponse": { + "type": "object", + "description": "This object is returned from a successful Weather Along Route.", + "properties": { + "summary": { + "$ref": "#/definitions/WeatherAlongRouteSummary" + }, + "waypoints": { + "type": "array", + "description": "Data for each waypoint returned in the same order as specified in the request.", + "items": { + "$ref": "#/definitions/Waypoint" + } + } + } + }, + "WeatherAlongRoutePrecipitation": { + "type": "object", + "properties": { + "dbz": { + "type": "number", + "format": "double", + "description": "The forecasted precipitation intensity in dBZ (decibels relative to Z) from 0.0 to 100.0." + }, + "type": { + "type": "string", + "description": "Precipitation type. If precipitation should occur, the type that it will be: \"RAIN,\" \"HAIL,\" \"SNOW,\" \"ICE,\" or \"MIX.\"" + } + } + }, + "SunGlare": { + "type": "object", + "description": "A rating that indicates how blinding the sun is for the driver.", + "properties": { + "calculatedVehicleHeading": { + "type": "integer", + "format": "int32", + "description": "If the vehicle heading value is not provided for a waypoint, then the service will calculate a heading based upon the location of neighboring waypoints if provided." + }, + "glareIndex": { + "type": "integer", + "format": "int32", + "description": "An index from 0 to 100 indicating sun glare intensity for a driver. A value of 50 and above can be considered a hazard for some drivers and a value of 100 signifies the driver is driving straight into the sun and atmospheric conditions are clear allowing for the full intensity of the sun to blind the driver." + } + } + }, + "Waypoint": { + "type": "object", + "properties": { + "iconCode": { + "type": "integer", + "format": "int32", + "description": "Numeric value representing an image that displays the `iconPhrase`. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + }, + "shortPhrase": { + "type": "string", + "description": "A displayable short phrase describing the forecasted conditions and precipitation intensity/type." + }, + "isDayTime": { + "type": "boolean", + "description": "Indicates the time of the day. True indicates 'day',', false indicates 'night." + }, + "cloudCover": { + "type": "integer", + "format": "int32", + "description": "Percent representing cloud cover." + }, + "temperature": { + "$ref": "#/definitions/WeatherUnit" + }, + "wind": { + "$ref": "#/definitions/Wind" + }, + "windGust": { + "$ref": "#/definitions/Wind" + }, + "precipitation": { + "$ref": "#/definitions/WeatherAlongRoutePrecipitation" + }, + "lightningCount": { + "type": "integer", + "format": "int32", + "description": "Estimation of thunderstorm intensity on an open scale. A value of 0 means there is no thunderstorm; values of 1 and higher mean there is a thunderstorm in increasing intensity." + }, + "sunGlare": { + "$ref": "#/definitions/SunGlare", + "description": "A rating that indicates how blinding the sun is for the driver." + }, + "hazards": { + "$ref": "#/definitions/Hazards" + }, + "notifications": { + "type": "array", + "items": { + "$ref": "#/definitions/Notification" + } + } + } + }, + "Hazards": { + "type": "object", + "properties": { + "maxHazardIndex": { + "$ref": "#/definitions/HazardIndex" + }, + "hazardDetails": { + "type": "array", + "description": "Details of the weather hazards affecting the trip.", + "items": { + "$ref": "#/definitions/HazardDetail" + } + } + } + }, + "HazardDetail": { + "type": "object", + "properties": { + "hazardIndex": { + "$ref": "#/definitions/HazardIndex" + }, + "hazardCode": { + "type": "string", + "description": "A unique identifier (non-displayable) for each type of hazard: LightRain, ModerateRain, HeavyRain, LightMix, ModerateMix, HeavyMix, LightSnow, ModerateSnow, HeavySnow, LightIce, ModerateIce, HeavyIce, Hail, LargeHail, SunGlare, SunGlareHigh, Lightning, SevereLightning, WindModerate, WindHigh, WindExtreme, FloodWarning, FlashFloodWarning, TornadoWarning, TsunamiWarning, SevereThunderstormWarning." + }, + "shortPhrase": { + "type": "string", + "description": "A displayable short phrase describing the forecasted conditions and precipitation intensity/type." + } + } + }, + "Notification": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "A type of notification generated to warn drivers of the onset of a hazard, or increase in intensity of a hazard." + }, + "hazardIndex": { + "$ref": "#/definitions/HazardIndex" + }, + "hazardCode": { + "type": "string", + "description": "A unique identifier (non-displayable) for each type of hazard: LightRain, ModerateRain, HeavyRain, LightMix, ModerateMix, HeavyMix, LightSnow, ModerateSnow, HeavySnow, LightIce, ModerateIce, HeavyIce, Hail, LargeHail, SunGlare, SunGlareHigh, Lightning, SevereLightning, WindModerate, WindHigh, WindExtreme, FloodWarning, FlashFloodWarning, TornadoWarning, TsunamiWarning, SevereThunderstormWarning." + }, + "shortPhrase": { + "type": "string", + "description": "A displayable short phrase describing the forecasted conditions and precipitation intensity/type." + } + } + }, + "SevereWeatherAlertsResponse": { + "type": "object", + "description": "This object is returned from a successful Get Severe Weather Alerts call.", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/SevereWeatherAlert" + }, + "description": "A list of all severe weather alerts for the queried location." + } + } + }, + "SevereWeatherAlert": { + "type": "object", + "description": "Information about a severe weather alert.", + "properties": { + "countryCode": { + "type": "string", + "description": "2-character ISO 3166-1 Alpha-2 country code, for example, \"US\"." + }, + "alertId": { + "type": "integer", + "format": "int32", + "description": "A unique numerical identifier for a weather alert." + }, + "description": { + "$ref": "#/definitions/Description", + "description": "Description of the alert." + }, + "category": { + "type": "string", + "description": "Category of the alert." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "Number signifying the importance or ranking order of the given alert within the country/region it has originated. A lower number signifies a higher priority. For example, 1 is the highest priority. The number varies by country/region and can change over time as each country/region evolves their alert systems." + }, + "class": { + "type": "string", + "description": "Classification of the alert. This field is not available for all countries and therefore not always returned." + }, + "level": { + "type": "string", + "description": "Severity level of the alert. This field is not available for all countries and therefore not always returned." + }, + "source": { + "type": "string", + "description": "The provider of the alert information. By default the source is returned in English (en-US). The alerts are from official Government Meteorological Agencies and leading global weather alert providers." + }, + "sourceId": { + "type": "integer", + "format": "int32", + "description": "A numerical identifier associated with the source provider name of the alert data." + }, + "disclaimer": { + "type": "string", + "description": "A disclaimer regarding the source of the alert information. This field is not always available. For example, disclaimer may include details about the delays or potential issues related to the alarm." + }, + "alertAreas": { + "type": "array", + "items": { + "$ref": "#/definitions/AlertArea" + }, + "description": "Information about the alert specific to the affected area(s)." + } + } + }, + "Description": { + "type": "object", + "description": "Description of a severe weather alert.", + "properties": { + "localized": { + "type": "string", + "description": "Description of the alert in the specified language. By default English (en-US) is returned if the language parameter is not specified in the request." + }, + "english": { + "type": "string", + "description": "Description of the alert in English (en-US)." + } + } + }, + "AlertArea": { + "type": "object", + "description": "Information about a severe weather alert issued within an affected area(s). If multiple alerts are active for the same location, the alerts will be returned in order of `priority` within the API response, with the highest priority alert being returned at the top of the response.", + "properties": { + "name": { + "type": "string", + "description": "The name of an area which is affected by the alert. The location that was requested falls under the alert area." + }, + "summary": { + "type": "string", + "description": "Text summarizing the alert in the returned area." + }, + "startTime": { + "type": "string", + "description": "The start date and time of the alert in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00. If the alert crosses multiple time zones the returned time in the response is the local time to the requested coordinate location." + }, + "endTime": { + "type": "string", + "description": "The end date and time of the alert in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00. If the alert crosses multiple time zones the returned time in the response is the local time to the requested coordinate location." + }, + "latestStatus": { + "$ref": "#/definitions/LatestStatus", + "description": "The latest status of the alert in the current area." + }, + "alertDetails": { + "type": "string", + "description": "Full details associated with the alert. Returned if `details`=True. This field is always returned in the language(s) of choice by the issuing provider and Azure Maps only returns what is created by the provider. Please note, some countries/regions may offer their native language and English. Language parameter won’t apply to this field." + }, + "alertDetailsLanguageCode": { + "type": "string", + "description": "Language of the `alertDetails`. This field helps to point out that the language of the `alertDetails` may differ from the requested language parameter. Returned if `details`=True. Language code has been derived from the ISO 639-1 Alpha-2 codes." + } + } + }, + "LatestStatus": { + "type": "object", + "description": "The latest status on the alert in the current area.", + "properties": { + "localized": { + "type": "string", + "description": "The latest status keyword for the alert, in the specified language. By default, returned in English (en-US)." + }, + "english": { + "$ref": "#/definitions/LatestStatusKeyword", + "description": "Latest status keyword for the alert, in English (en-US)." + } + } + }, + "LatestStatusKeyword": { + "type": "string", + "description": "Keyword for the latest status of the alert.", + "enum": [ + "New", + "Extend", + "Cancel", + "Correct", + "Expire", + "Upgrade", + "Continue", + "Update" + ], + "x-ms-enum": { + "name": "LatestStatusKeyword", + "modelAsString": false, + "values": [ + { + "value": "New", + "description": "\"New\" - the status of an alert upon initial issuance." + }, + { + "value": "Extend", + "description": "\"Extend\" - the alert has been extended in time, in area, or both since its initial issuance." + }, + { + "value": "Cancel", + "description": "\"Cancel\" - the alert has been canceled prior to its original expiration time." + }, + { + "value": "Correct", + "description": "\"Correct\" - the alert has been modified to correct a previous error." + }, + { + "value": "Expire", + "description": "\"Expire\" - the alert has expired and is no longer active." + }, + { + "value": "Upgrade", + "description": "\"Upgrade\" - the alert has been upgraded to a higher class or category since its initial issuance." + }, + { + "value": "Continue", + "description": "\"Continue\" - the alert has been updated since its initial issuance, but no changes were made to `alertAreas`, `startTime`, `endTime`, or `class`." + }, + { + "value": "Update", + "description": "\"Update\" - the alert has been updated since its initial issuance." + } + ] + } + }, + "DailyIndicesResponse": { + "type": "object", + "description": "This object is returned from a successful Get Daily Indices call.", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/DailyIndex" + }, + "description": "A list of all daily indices for the queried location." + } + } + }, + "DailyIndex": { + "type": "object", + "description": "Information about a daily index.", + "properties": { + "indexName": { + "type": "string", + "description": "Name of the index, for example, \"Construction\", \"Outdoor Activity\", \"Flight Delays\"." + }, + "indexId": { + "type": "integer", + "format": "int32", + "description": "Numeric ID used to identify the specific index. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported index IDs. For example, the index ID can support UI visualization scenarios." + }, + "dateTime": { + "type": "string", + "description": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "value": { + "type": "number", + "format": "float", + "description": "Index value. Ranges from 0.0 to 10.0. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details and to see the supported ranges." + }, + "category": { + "type": "string", + "description": "Textual description for `categoryValue` corresponding to the level that the index value falls under, for example \"Very Good\"." + }, + "categoryValue": { + "type": "integer", + "format": "int32", + "description": "Level that the index value falls under, represented by an integer. This value can be 1 through 5 and should be used in combination with the `ascending` flag because it can differ among indices. For example, the following values apply for Mosquito Activity: Low=1, Moderate=2, High=3, Very High=4, and Extreme=5." + }, + "ascending": { + "type": "boolean", + "description": "Describes the direction of the `value` and `categoryValue`. For example, when `ascending`=True, the poorest index value is 0 and the best index value is 10. When `ascending`=True, the poorest index value is 10 and the best index value is 0." + }, + "description": { + "type": "string", + "description": "A textual explanation that can be used for display purposes to summarize the index value and category. For example, when the index value for Flight Delays is very good, the description will be \"Conditions are excellent for flying!\"." + } + } + }, + "CurrentAirQualityResponse": { + "type": "object", + "description": "This object is returned from a successful Get Current Air Quality call.", + "properties": { + "results": { + "type": "array", + "items": { + "$ref": "#/definitions/AirQuality" + }, + "description": "A list of all air quality results for the queried location." + } + } + }, + "HourlyAirQualityForecastResponse": { + "type": "object", + "description": "This object is returned from a successful Get Hourly Air Quality Forecast call.", + "properties": { + "forecasts": { + "type": "array", + "items": { + "$ref": "#/definitions/AirQuality" + }, + "description": "A list of all hourly air quality forecasts for the queried location." + } + } + }, + "DailyAirQualityForecastResponse": { + "type": "object", + "description": "This object is returned from a successful Get Daily Air Quality Forecast call.", + "properties": { + "forecasts": { + "type": "array", + "items": { + "$ref": "#/definitions/DailyAirQuality" + }, + "description": "A list of all daily air quality forecasts for the queried location." + } + } + }, + "AirQuality": { + "type": "object", + "description": "Information about the air quality in a specific location at a specific time.", + "properties": { + "dateTime": { + "type": "string", + "description": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "index": { + "type": "number", + "format": "float", + "description": "Air quality rating on a scale set by local regulating bodies. Scales can vary widely based on location. See [Wikipedia](https://en.wikipedia.org/wiki/Air_quality_index) for more information." + }, + "globalIndex": { + "type": "number", + "format": "float", + "description": "Internationally normalized air quality rating on a scale from 0 to 300 and up, with higher numbers representing worse air quality." + }, + "dominantPollutant": { + "type": "string", + "description": "The pollutant with the highest concentration." + }, + "category": { + "type": "string", + "description": "One-word description of the air quality in the requested language. For example, \"Excellent\"." + }, + "categoryColor": { + "type": "string", + "description": "A unique color corresponding to the category of this air quality result." + }, + "description": { + "type": "string", + "description": "A textual explanation of this air quality result in the requested language." + }, + "pollutants": { + "type": "array", + "items": { + "$ref": "#/definitions/Pollutant" + }, + "description": "Information about individual pollutants." + } + } + }, + "DailyAirQuality": { + "type": "object", + "description": "Information about the air quality in a specific location at a specific time.", + "properties": { + "dateTime": { + "type": "string", + "description": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00." + }, + "index": { + "type": "number", + "format": "float", + "description": "Air quality rating on a scale set by local regulating bodies. Scales can vary widely based on location. See [Wikipedia](https://en.wikipedia.org/wiki/Air_quality_index) for more information." + }, + "globalIndex": { + "type": "number", + "format": "float", + "description": "Internationally normalized air quality rating on a scale from 0 to 300 and up, with higher numbers representing worse air quality." + }, + "dominantPollutant": { + "$ref": "#/definitions/DominantPollutant", + "description": "The pollutant with the highest concentration." + }, + "category": { + "type": "string", + "description": "One-word description of the air quality in the requested language. For example, \"Excellent\"." + }, + "categoryColor": { + "type": "string", + "description": "A unique color corresponding to the category of this air quality result." + }, + "description": { + "type": "string", + "description": "A textual explanation of this air quality result in the requested language." + } + } + }, + "Pollutant": { + "type": "object", + "description": "Detailed information about an individual pollutant. Not returned if `pollutants`=false.", + "properties": { + "type": { + "$ref": "#/definitions/PollutantType", + "description": "Type of pollutant. Please note that more may be added at any time." + }, + "name": { + "type": "string", + "description": "The name of the pollutant in English." + }, + "index": { + "type": "number", + "format": "float", + "description": "Air quality rating on a scale set by local regulating bodies. Scales can vary widely based on location. See [Wikipedia](https://en.wikipedia.org/wiki/Air_quality_index) for more information." + }, + "globalIndex": { + "type": "number", + "format": "float", + "description": "Internationally normalized air quality rating on a scale from 0 to 300 and up, with higher numbers representing worse air quality." + }, + "concentration": { + "$ref": "#/definitions/Concentration", + "description": "An object containing the number of pollutant particles per volume of air." + } + } + }, + "PollutantType": { + "type": "string", + "description": "Type of pollutant. Please note that more may be added at any time.", + "enum": [ + "CO", + "NO2", + "O3", + "PM2.5", + "PM10", + "SO2" + ], + "x-ms-enum": { + "name": "PollutantType", + "modelAsString": false, + "values": [ + { + "value": "CO", + "description": "Carbon monoxide (\"CO\")" + }, + { + "value": "NO2", + "description": "Nitrogen dioxide (\"NO2\")" + }, + { + "value": "O3", + "description": "Ozone (\"O3\")" + }, + { + "value": "PM2.5", + "description": "Particulate matter 2.5 (\"PM2.5\")" + }, + { + "value": "PM10", + "description": "Particulate matter 10 (\"PM10\")" + }, + { + "value": "SO2", + "description": "Sulfur dioxide (\"SO2\")" + } + ] + } + }, + "Concentration": { + "type": "object", + "description": "An object containing the number of pollutant particles per volume of air.", + "properties": { + "value": { + "type": "number", + "format": "float", + "description": "The numerical value indicating the concentration of the corresponding pollutant." + }, + "unit": { + "type": "string", + "description": "Type of unit for the concentration of the pollutant." + }, + "unitType": { + "type": "integer", + "description": "Numeric ID value associated with the type of unit being displayed. Can be used for unit translation. Please refer to [Weather Service Concepts](https://aka.ms/AzureMapsWeatherConcepts) for details." + } + } + }, + "DominantPollutant": { + "type": "string", + "description": "Type of pollutant. Please note that more may be added at any time.", + "enum": [ + "Carbon Monoxide", + "Nitrogen Dioxide", + "Ozone", + "Particulate Matter 2.5", + "Particulate Matter 10", + "Sulfur Dioxide" + ], + "x-ms-enum": { + "name": "DominantPollutant", + "modelAsString": false, + "values": [ + { + "value": "Carbon Monoxide", + "description": "Carbon monoxide (\"CO\")" + }, + { + "value": "Nitrogen Dioxide", + "description": "Nitrogen dioxide (\"NO2\")" + }, + { + "value": "Ozone", + "description": "Ozone (\"O3\")" + }, + { + "value": "Particulate Matter 2.5", + "description": "Particulate matter 2.5 (\"PM2.5\")" + }, + { + "value": "Particulate Matter 10", + "description": "Particulate matter 10 (\"PM10\")" + }, + { + "value": "Sulfur Dioxide", + "description": "Sulfur dioxide (\"SO2\")" + } + ] + } + } + } +} diff --git a/specification/maps/data-plane/readme.md b/specification/maps/data-plane/readme.md new file mode 100644 index 000000000000..b31946f65218 --- /dev/null +++ b/specification/maps/data-plane/readme.md @@ -0,0 +1,63 @@ +# Azure Maps + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for MapsClient + + +--- +## Getting Started +To build the SDK for Maps, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + +### Basic Information +These are the global settings for MapsClient. + +``` yaml +title: MapsClient +openapi-type: data-plane +tag: package-1.0-preview +``` + +### Suppression + +``` yaml +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + from: timezone.json + reason: It will break existing clients if we change the name + +``` + +### Tag: package-1.0-preview + +These settings apply only when `--tag=package-1.0-preview` is specified on the command line. + +``` yaml $(tag) == 'package-1.0-preview' +input-file: + - Microsoft.Maps/Alias/preview/1.0/alias.json + - Microsoft.Maps/Data/preview/1.0/data.json + - Microsoft.Maps/Dataset/preview/1.0/dataset.json + - Microsoft.Maps/DwgConversion/preview/1.0/dwgconversion.json + - Microsoft.Maps/FeatureState/preview/1.0/featurestate.json + - Microsoft.Maps/Feedback/preview/1.0/feedback.json + - Microsoft.Maps/Geolocation/preview/1.0/geolocation.json + - Microsoft.Maps/Mobility/preview/1.0/mobility.json + - Microsoft.Maps/Render/preview/1.0/render.json + - Microsoft.Maps/Route/preview/1.0/route.json + - Microsoft.Maps/Search/preview/1.0/search.json + - Microsoft.Maps/Spatial/preview/1.0/spatial.json + - Microsoft.Maps/Tileset/preview/1.0/tileset.json + - Microsoft.Maps/Timezone/preview/1.0/timezone.json + - Microsoft.Maps/Traffic/preview/1.0/traffic.json + - Microsoft.Maps/Weather/preview/1.0/weather.json + - Microsoft.Maps/WFS/preview/1.0/wfs.json +``` From 9ce0ebb1f9fb2d1863282710145c78f79a802f51 Mon Sep 17 00:00:00 2001 From: Phoenix He Date: Tue, 22 Sep 2020 09:43:41 +0800 Subject: [PATCH 14/37] Bugfix SDK Automation switch (#10864) --- .azure-pipelines/SDKAutomation.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.azure-pipelines/SDKAutomation.yml b/.azure-pipelines/SDKAutomation.yml index 4cd770c7861d..a567d468ab0b 100644 --- a/.azure-pipelines/SDKAutomation.yml +++ b/.azure-pipelines/SDKAutomation.yml @@ -42,8 +42,8 @@ jobs: Trenton: SDK_REPO_NAME: azure-sdk-for-trenton ${{ if eq(variables['ENABLE_RESOURCE_MANAGER_SCHEMAS'], 'true') }}: - Schema: - SDK_REPO_NAME: azure-resource-manager-schemas + Schema: + SDK_REPO_NAME: azure-resource-manager-schemas steps: - checkout: none - script: | From 480fa2a589fcbe3b53454252547f5bd441accd2a Mon Sep 17 00:00:00 2001 From: Ritesh chitlangia <60164879+riteshchitlangia1@users.noreply.github.com> Date: Mon, 21 Sep 2020 20:12:31 -0700 Subject: [PATCH 15/37] Fixing hsmUri property name and removing regex pattern for name validation, delegating it to service side validations (#10872) --- azure-rest-api-specs | 2 +- .../examples/ManagedHsm_CreateOrUpdate.json | 4 ++-- .../preview/2020-04-01-preview/examples/ManagedHsm_Get.json | 2 +- .../examples/ManagedHsm_ListByResourceGroup.json | 4 ++-- .../examples/ManagedHsm_ListBySubscription.json | 4 ++-- .../2020-04-01-preview/examples/ManagedHsm_Update.json | 4 ++-- .../preview/2020-04-01-preview/managedHsm.json | 4 +--- 7 files changed, 11 insertions(+), 13 deletions(-) diff --git a/azure-rest-api-specs b/azure-rest-api-specs index 545a9ad7563f..f83281b2fed8 160000 --- a/azure-rest-api-specs +++ b/azure-rest-api-specs @@ -1 +1 @@ -Subproject commit 545a9ad7563fe2858d08aba9ee5b8444375d47a9 +Subproject commit f83281b2fed8011962c4e91b7b0270f6391a0832 diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_CreateOrUpdate.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_CreateOrUpdate.json index 73da0e381c22..16c3ad45709d 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_CreateOrUpdate.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_CreateOrUpdate.json @@ -36,7 +36,7 @@ "enableSoftDelete": true, "softDeleteRetentionInDays": 90, "enablePurgeProtection": true, - "hsmPoolUri": null, + "hsmUri": null, "provisioningState": "Provisioning", "statusMessage": "Allocating hardware" }, @@ -64,7 +64,7 @@ "enableSoftDelete": true, "softDeleteRetentionInDays": 90, "enablePurgeProtection": true, - "hsmPoolUri": "https://westus.hsm1.managedhsm.azure.net", + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", "provisioningState": "Succeeded", "statusMessage": "ManagedHsm is functional." }, diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_Get.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_Get.json index 09952f621ce4..9dd9972f3fac 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_Get.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_Get.json @@ -16,7 +16,7 @@ "enableSoftDelete": true, "softDeleteRetentionInDays": 90, "enablePurgeProtection": true, - "hsmPoolUri": "https://westus.hsm1.managedhsm.azure.net", + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", "provisioningState": "Succeeded", "statusMessage": "ManagedHsm is functional." }, diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_ListByResourceGroup.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_ListByResourceGroup.json index 52723b08d547..7a3fe9cb1ee9 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_ListByResourceGroup.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_ListByResourceGroup.json @@ -17,7 +17,7 @@ "enableSoftDelete": true, "softDeleteRetentionInDays": 90, "enablePurgeProtection": true, - "hsmPoolUri": "https://westus.hsm1.managedhsm.azure.net", + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", "provisioningState": "Succeeded", "statusMessage": "ManagedHsm is functional." }, @@ -43,7 +43,7 @@ "enableSoftDelete": true, "softDeleteRetentionInDays": 90, "enablePurgeProtection": true, - "hsmPoolUri": "https://westus.hsm2.managedhsm.azure.net", + "hsmUri": "https://westus.hsm2.managedhsm.azure.net", "provisioningState": "Succeeded", "statusMessage": "ManagedHsm is functional." }, diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_ListBySubscription.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_ListBySubscription.json index e792f31cecef..63ae1da82161 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_ListBySubscription.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_ListBySubscription.json @@ -16,7 +16,7 @@ "enableSoftDelete": true, "softDeleteRetentionInDays": 90, "enablePurgeProtection": true, - "hsmPoolUri": "https://westus.hsm1.managedhsm.azure.net", + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", "provisioningState": "Succeeded", "statusMessage": "ManagedHsm is functional." }, @@ -42,7 +42,7 @@ "enableSoftDelete": true, "softDeleteRetentionInDays": 90, "enablePurgeProtection": true, - "hsmPoolUri": "https://westus.hsm2.managedhsm.azure.net", + "hsmUri": "https://westus.hsm2.managedhsm.azure.net", "provisioningState": "Succeeded", "statusMessage": "ManagedHsm is functional." }, diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_Update.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_Update.json index eaea40a4cefe..ebedabe4e003 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_Update.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/examples/ManagedHsm_Update.json @@ -23,7 +23,7 @@ "enableSoftDelete": true, "softDeleteRetentionInDays": 90, "enablePurgeProtection": true, - "hsmPoolUri": "https://westus.hsm1.managedhsm.azure.net", + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", "provisioningState": "Succeeded", "statusMessage": "ManagedHsm is functional." }, @@ -52,7 +52,7 @@ "enableSoftDelete": true, "softDeleteRetentionInDays": 90, "enablePurgeProtection": true, - "hsmPoolUri": "https://westus.hsm1.managedhsm.azure.net", + "hsmUri": "https://westus.hsm1.managedhsm.azure.net", "provisioningState": "Updating", "statusMessage": "ManagedHsm is updating." }, diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/managedHsm.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/managedHsm.json index 7c8276ac052f..34462f6b4514 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/managedHsm.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2020-04-01-preview/managedHsm.json @@ -51,7 +51,6 @@ "in": "path", "required": true, "type": "string", - "pattern": "^[a-zA-Z0-9]{3,24}$", "description": "Name of the managed HSM Pool" }, { @@ -112,7 +111,6 @@ "in": "path", "required": true, "type": "string", - "pattern": "^[a-zA-Z0-9]{3,24}$", "description": "Name of the managed HSM Pool" }, { @@ -393,7 +391,7 @@ }, "description": "Array of initial administrators object ids for this managed hsm pool." }, - "hsmPoolUri": { + "hsmUri": { "type": "string", "description": "The URI of the managed hsm pool for performing operations on keys." }, From 7727c9aba722f50c5029807737c4f39bb283aa72 Mon Sep 17 00:00:00 2001 From: Tanyi Chen Date: Tue, 22 Sep 2020 11:18:22 +0800 Subject: [PATCH 16/37] compute add java readme (#10875) --- specification/compute/resource-manager/readme.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 9480f7c084d3..f3bf70b2dee3 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -786,12 +786,26 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-compute ```yaml $(java) && $(multiapi) batch: + - tag: package-2020-06-01 - tag: package-disks-2018-04 - tag: package-compute-only-2017-12 - tag: package-skus-2017-09 - tag: package-compute-2017-03 ``` +### Tag: package-2020-06-01 and java + +These settings apply only when `--tag=package-2020-06-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-06-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.compute.v2020_06_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/compute/mgmt-v2020_06_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-disks-2018-04 and java These settings apply only when `--tag=package-disks-2018-04 --java` is specified on the command line. From 74900e122c02fcf55e46e26d6e38db497df7d28d Mon Sep 17 00:00:00 2001 From: rapatchi <31914689+rapatchi@users.noreply.github.com> Date: Tue, 22 Sep 2020 08:52:20 +0530 Subject: [PATCH 17/37] Remove Cert based auth form ListClusterUserCredentials (#10845) --- .../2020-01-01-preview/connectedClusters.json | 23 +------------------ ...ersListClusterCredentialsResultNonAad.json | 9 +++----- 2 files changed, 4 insertions(+), 28 deletions(-) diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json index 594cbe5f46d6..ef6bfc6f5488 100644 --- a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json @@ -630,8 +630,7 @@ "type": "string", "description": "The mode of client authentication.", "enum": [ - "Token", - "ClientCertificate" + "Token" ], "x-ms-enum": { "name": "AuthenticationMethod", @@ -644,31 +643,11 @@ "token": { "type": "string", "description": "Authentication token." - }, - "clientCertificate": { - "$ref": "#/definitions/AuthenticationCertificateDetails" } } } } }, - "AuthenticationCertificateDetails": { - "type": "object", - "required": [ - "certificateData", - "keyData" - ], - "properties": { - "certificateData": { - "type": "string", - "description": "Base64 encoded client certificate data." - }, - "keyData": { - "type": "string", - "description": "Base64 encoded key data." - } - } - }, "ConnectedClusterProvisioningState": { "type": "string", "description": "The current deployment state of connectedClusters.", diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResultNonAad.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResultNonAad.json index a201d8d63b6b..c453bcbf273c 100644 --- a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResultNonAad.json +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResultNonAad.json @@ -5,12 +5,9 @@ "clusterName": "testCluster", "api-version": "2020-01-01-preview", "ClientAuthenticationDetails": { - "authenticationMethod": "ClientCertificate", + "authenticationMethod": "Token", "value": { - "clientCertificate": { - "certificateData": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", - "keyData": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO" - } + "token": "2c64fr2d61daffd8684bda773f6a478e1e5879ae15fdd3d54584cd5350c6ae139a0b7998a76f1a97e8b7ca052bb20ef4f9ce037d9a323fc161fb40b895e9b0f3" } } }, @@ -20,7 +17,7 @@ "kubeconfigs": [ { "name": "credentialName1", - "value": "YXBpVmVyc2lvbjogdjENCmNsdXN0ZXJzOg0KLSBjbHVzdGVyOg0KICAgIGNlcnRpZmljYXRlLWF1dGhvcml0eS1kYXRhOiBMUzB0TFMxQ1JVZEpUaUJEUlZKVVNVWkpRMEZVUlMwdExTMHRDazFKU1VWNGVrTkRRWEVyWjBGM1NVSkJaMGxSVTJ0dVdsWnZaekp1VmpKVmNYZEtjblZYTTFCSGVrRk9RbWRyY1docmFVYzVkekJDUVZGelJrRkVRVTRLVFZGemQwTlJXVVJXVVZGRVJYZEthbGVsSlEwbHFRVTVDWjJ0eGFHdHBSemwzTUVKQlVVVkdRVUZQUTBGbk9FRk5TVWxEUTJkTFEwRm5SVUUwV1hCNUNsUmtUMVJSU1dNdmVsaERlR3hTZWtVMF" + "value": "YXBpVmVyc2lvbjogdjEKY2x1c3RlcnM6CiAgLSBjbHVzdGVyOgogICAgICBjZXJ0aWZpY2F0ZS1hdXRob3JpdHktZGF0YTogTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaDJWRU5EUW1GWFowRjNTVUpCWjBsVVlYZEJRVUV5VkhWQlRYaEJhVWx5UldsQlFVRkJRVUZFV2tSQlRrSm5hM0ZvYTJsSE9YY3dRa0ZSYzBaQlJFSlFUVkZ6ZDBOUldVUldVVkZIUlhkS1ZsVjZSV1ZOUW5kSFFURlZSVU5vVFZaVVYyeHFZMjA1ZW1JeVdqQkpSVTUyWTI1Q2RtTnRSakJoVnpsMVRWTkJkMGhuV1VSV1VWRkVSWGhrVG1GWFRubGlNMDUyV201UloxVnNUa0pKUmxKTlZYbENSRkZUUVhkTlZFRmxSbmN3ZVUxRVFUUk5hbU40VFdwTmVFNVVXbUZHZHpCNVRWUkJORTFxWTNoTmFrMTRUbFJhWVUxRFdYaEtSRUZwUW1kT1ZrSkJUVTFIZVc5MVlYcG9lbGt5T1hWaWJWWnFaRU0xTUZwWVRqQk1iVVkyWkZoS2JFeHRUblppVkVORFFWTkpkMFJSV1VwTGIxcEphSFpqVGtGUlJVSkNVVUZFWjJkRlVFRkVRME5CVVc5RFoyZEZRa0ZOU0VwVU0wZEtXbWhMTm5KaVVHSm9XRWN6V21SU05HVlhNSGhSVmxVclIwTjVXSEFyY0VwRFNtUjBhbGgyTjNwMFEzTnJRV0ZaZDJobmQyMHpOMGhFVkVWamNFVlFjR1p6TDJSSFdsQktiek5vU0ZOemVGaENUMUJXYUVsVVRHZFBSa1E0YW5BMVlWZG1kVXA0WWsxUFNqZ3dObWxST0VkT1NVdEZURGM1ZDFkMVNWcG5MemhCWTBZeVNEWnJTMDlWVVhJdmVFMWFjVWx1WW5sQk1XVmhPVW8xTmpKbVNVODRUbEp2YWxORVRFUlBWRzFyWTFaYVdHcHlTaTlsYW1wclVVMUhiV0YyT1hreE9EQjJUVkZ5TTBjM2FXZ3Jkell2VFZocGVWWkpLMGxhY3pSaGVXVTJhREo0VDA5VlNYQnRWVTQ0UlhVNWIwY3ZTSGRHV2swemJHWnBkR0ZQZUhsblEydHBNV2R0VFRsd09FcHhNMVIyVVRSbU9YSnBRVWRUVFhaWWVsSlpTa2hOU2toVVRtZFZhV1pZVjFWb1VFWTJWMkZGTWxwbFdVWkdOV1ozU0U5MlVYRnFSa2tyUlZWS1JscE1kekJEUVhkRlFVRmhUME5CTjJ0M1oyZFBNVTFKU1VKQmQxbExTM2RaUWtKQlNGZGxVVWxGUVdkVFFqbEJVMEk0VVVSMlFVaFZRVGxzZVZWTU9VWXpUVU5KVlZaQ1owbE5TbEpYYW5WT1RrVjRhM3AyT1RoTlRIbEJUSHBGTjNoYVQwMUJRVUZHTUV3dlFuTjNRVUZCUWtGTlFWSnFRa1ZCYVVJMFpWSlVTMHhZY1hsM09HazFMeTlyVmtaNWNrTlhZMFZtY0VaV2NGUlZSVFIzYlVNME1rZHhSMkpCU1dkTkswVllkRWhtV0Rrd05WVklZall3Y1hKUlEzUTRibkZhTkUxamRVUjNOMlJaZVhwdGJFc3pja05SUVdSblFtTXpSVTlUTDNWaGNsSlZVM2hZY0hKVlZuVlpVVTR2ZGxZcmEyWmpiMWhQVlhOc04yMDVjMk5QZVdkQlFVRllVWFk0UjNwd1FVRkJSVUYzUWtoTlJWVkRTVVZZYTFwcWMyOUNVamhWZEc5blQwbFhWeXQyVTFOQ2NWcEViRGxIVEVRME1uWXdNR0ZXTkRVMVF6RkJhVVZCZDI1aE4zaDVWRUZJUTBJemNqVTBSSG93WnpKMVJHWktNa2ROUVdod2RuRnJiSGN5YXpka1VrMVdZM2RLZDFsS1MzZFpRa0pCUjBOT2VGVkxRa0p2ZDBkRVFVdENaMmR5UW1kRlJrSlJZMFJCVkVGTFFtZG5ja0puUlVaQ1VXTkVRV3BCSzBKbmEzSkNaMFZGUVZsSk0wWlJZMFZOVkVGMlFtbGpja0puUlVWQldVa3pSbEZwU0RKdldqRm5LemRhUVZsTVNtaFNkVUowV2pWb2FHWlVjbGxKUm1Sb1dXRlBVVmxtUTIxR1FVTkJWMUZEUVZOVmQyZFpZMGREUTNOSFFWRlZSa0ozUlVKQ1NITjNaVlJDVkVKblozSkNaMFZHUWxGamQwRnZXa2hoU0ZJd1kwUnZka3d6WkROa2VUVjBZVmRPZVdJelRuWmFibEYxV1RJNWRFd3pRbkpoVXpsMFl6Sk9kbU51UVhaVVYyeHFZMjA1ZW1JeVdqQktWRWwzVld4T1FrcFVTWGRXUlhoVVNsUkpkMUV3Uld4TmFrRjNUVk0xYW1OdVVYZEpaMWxKUzNkWlFrSlJWVWhOUVVkSFJtMW9NR1JJUVRaTWVUbDJXVE5PZDB4dE1YcGlNazU2WTBNMWFtSXlNSGRJVVZsRVZsSXdUMEpDV1VWR1N6ZFZhQ3M1WkdnNUwxRjFZM0ZKTlVFNVJHc3djMlpzTTFsVFRVRnpSMEV4VldSRWQxRkZRWGRKUlhORVFrSkNaMDVXU0ZKRlJVOXFRVFJuYUhOeFRHMXpOR015VG5aaWJUVnNXVE5SZFdSSFZucGtRelZvWlc1V2VWcFROV3BpTWpKRFIxZHpOR015VG5aaWJUVnNXVE5SZFdSSFZucGtRelZvWlc1V2VWcFROV3BpTWpCM1oySkJSMEV4VldSSWQxTkNjVVJEUW5CVVEwSnZjVU5DYmpaRFFtNUpXazVoU0ZJd1kwUnZka3d5TVhwWk0wcHpURzB4Y0ZrelNuWmpNamx0WkVNMWFtSXlNSFpqUjNSd1RESXhlbGt5T1hsalF6bHFZMjEzZGxSWGJHcGpiVGw2WWpKYU1FcFVTWGRWYkU1Q1NsUkpkMVpGZUZSS1ZFbDNVVEJGYkUxcVFYZE5VelZxWTIxNVIxTXlhREJrU0VFMlRIazVhbU50ZDNWaVYyeHFZMjA1ZW1JeVdqQk1iVTUyWWxNNWQyRXlhM1ppV0U1cVlqTktkMHd5VG5saVF6bE9ZVmRPZVdJelRuWmFibEZzVFdwQ1UxVXdSV3hOYWtKVlZFWk5iRTFxUWtSUlUxVjVUVVJCZUV4dFRubGlSRUpZUW1kT1ZraFRRVVZWUkVKUFRVVkpSME5UYzBkQlVWRkNaMnBqY1VGVVFURk5SRTFIUTBOelIwRlJWVVpDZDBsQ1JtbGtiMlJJVW5kUGFUaDJaRE5rTTB4dE1YQlpNMHAyWXpJNWJXUkROV3BpTWpCMlkwZDBjRXd5TVhwWk1qbDVZME01YW1OSVRYZERRVmxIV2pSRlRVRlJTVUpOUWpoSFFURlZaRWwzVVZsTlFtRkJSa3hXTWtSRVFWSjZjMlZUVVdzeFRYZ3hkM041UzJ0Tk5rRjBhMDFDTUVkQk1WVmtTbEZSVjAxQ1VVZERRM05IUVZGVlJrSjNUVUpDWjJkeVFtZEZSa0pSWTBSQmFrRk9RbWRyY1docmFVYzVkekJDUVZGelJrRkJUME5CWjBWQlJWZHRUVmRzWjJ3NGQzSlRUWHBQTW1Ob1pVbHZhbkZRVjBNd2FVVlVkSGRZYVVreWRqVmtWVkV5ZG01eWMydFVZM1ZzV1ZJNFExSllRemxXY0hWTU5YZDJUbEJaWlVzNWFtRjRhRXhGZW14YUt6aENTaTlhSzA5Q1NsRlBiV0k0VDIxRkwzcEVha1o1WVU5WWIzUXZNMEl3ZG5CcE9FWk1NalZNUkhGbGVuZExSeXN5VHpSVVJWQkhha1pGTmxONVRqWmlVR2d5ZG1Vck4wSTJLemQwVWpWeWVEZEtlU3RVY2pGcE9XdDBkV1p6UVhGWk5HSmtaMmd4Y2xWTGFsSkZVemRLVjNWek9HZDNVWG80YmtkSGMzaEhXbVJuU25oYVpISlJjVlZJUzNFMFlWcDJVVEZtWmtrM1RUbHVXWGhOVFM5VFNURkRlbTkxWkd0NmFHVnFSRXgzYW5vdk5UZHRaR04xYVdZck56TkpUbUZDVG5KRFprRXljemM1T1hwV1lVeDNkbXBMTlhRcmEwOVNSelI0TkZoWVpTdFphelZhV2pWQlkyMUZVa05NWnpSTGJHVkpiRFJJY3pSeGRYSkxhbGMxTjI1SFRYTnhLMHBXVGpBd2FFWXhXR1pETkZCVlpYbFJObFJPTUcxNlVGRXhia2RaZENzcmJVSTFWV053TURkWVRuVnpWR1JoTW05SGF6SlNOak5PVWsxWWIzcHRTbkYxVnlzNGRFVlVMMUJLUzNGUGFrVlNRalJXZHpOQ1IwUnZWRTVYVTNwb1dIbDRTVlp0TVhOT1dUSkJUVlpYYUdOYVkzRXpPVWRYVUc5UVp6RXpSbW80VDFsc2NFRm1SR1o2YURGaWRYWkdVbVpwVFZVME1sbHROa3c1YlROVVMwUjRlVXdyTWxKVmVESlNNbUo1VUZWTVQyVXdSMnd4T1hKelUyWlpjeTlvYjNkb1dWSnNXWEp1T0dKYVJFTkhiRFUzTDFGTWVHcEJXWFJVVWtZdlZFaHZLM1JOYTJSVmFTOWhUV2xVU0hoMlltcGtZeTlsYWxocVVISjRTbUp5UzFCVU1tUkVXRVk0ZG5aRGQzZGFRazAwUjFGWlNGaDViRFV6VTB4cU1VdHJRMjlvVlZKTkwzcDBlVEZpVTJOWWRIcE5aMDFJVmpWUFRYVkthVVZYVVhKV1NpOUhWRzlNVGxsUVNHMWxORXROY21jOUNpMHRMUzB0UlU1RUlFTkZVbFJKUmtsRFFWUkZMUzB0TFMwPQogICAgICBzZXJ2ZXI6IGh0dHBzOi8vYTljNDMzYzMtNjhlMS00NTY2LWI2MzMtODM0NzUyOWYzNjIwLms4c2Nvbm5lY3QudGVzdC5henVyZS5jb20KICAgIG5hbWU6IGNsdXN0ZXIKY29udGV4dHM6CiAgLSBjb250ZXh0OgogICAgICBjbHVzdGVyOiBjbHVzdGVyCiAgICAgIHVzZXI6IGNsdXN0ZXJVc2VyX3Rlc3RfY2x1c3RlcgogICAgbmFtZTogY2x1c3RlcgpjdXJyZW50LWNvbnRleHQ6IGNsdXN0ZXIKa2luZDogQ29uZmlnCnByZWZlcmVuY2VzOiBudWxsCnVzZXJzOgogIC0gbmFtZTogY2x1c3RlclVzZXJfdGVzdF9jbHVzdGVyCiAgICB1c2VyOgogICAgICB0b2tlbjogMmM2NGZyMmQ2MWRhZmZkODY4NGJkYTc3M2Y2YTQ3OGUxZTU4NzlhZTE1ZmRkM2Q1NDU4NGNkNTM1MGM2YWUxMzlhMGI3OTk4YTc2ZjFhOTdlOGI3Y2EwNTJiYjIwZWY0ZjljZTAzN2Q5YTMyM2ZjMTYxZmI0MGI4OTVlOWIwZjM=" } ] } From 58aa6f70372bcb3afbae8c09b77ec82939d6018b Mon Sep 17 00:00:00 2001 From: Reza Jooyandeh Date: Mon, 21 Sep 2020 21:23:25 -0700 Subject: [PATCH 18/37] Add the swagger files (#10878) * Add Communication Services Specifications * Remove Go code generation --- cSpell.json | 7 + .../communicationserviceschat.json | 1617 +++++++++++++++++ .../Conversations_ListChatReadReceipts.json | 50 + .../Conversations_SendChatReadReceipt.json | 37 + .../examples/Messages_DeleteChatMessage.json | 35 + .../examples/Messages_GetChatMessage.json | 46 + ...Messages_ListChatMessagesWithPageSize.json | 89 + .../examples/Messages_SendChatMessage.json | 46 + .../Messages_SendTypingNotification.json | 35 + .../examples/Messages_UpdateChatMessage.json | 38 + .../ThreadMembers_AddChatThreadMembers.json | 69 + .../ThreadMembers_ListChatThreadMembers.json | 50 + .../ThreadMembers_RemoveChatThreadMember.json | 35 + .../examples/Threads_CreateChatThread.json | 83 + .../examples/Threads_DeleteChatThread.json | 34 + .../examples/Threads_GetChatThread.json | 51 + .../Threads_ListChatThreadsWithPageSize.json | 70 + .../Threads_UpdateChatThreadTopic.json | 37 + .../CommunicationIdentity.json | 264 +++ .../examples/CreateIdentity.json | 14 + .../examples/DeleteIdentity.json | 11 + .../examples/IssueToken.json | 22 + .../examples/UpdateIdentity.json | 14 + .../communicationservicessms.json | 145 ++ .../2020-07-20-preview1/examples/send.json | 23 + .../communication/data-plane/readme.csharp.md | 15 + .../communication/data-plane/readme.md | 91 + .../communication/data-plane/readme.python.md | 21 + .../communication/data-plane/readme.ruby.md | 19 + .../data-plane/readme.typescript.md | 13 + 30 files changed, 3081 insertions(+) create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_ListChatReadReceipts.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_SendChatReadReceipt.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_DeleteChatMessage.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_GetChatMessage.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_ListChatMessagesWithPageSize.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendChatMessage.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendTypingNotification.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_UpdateChatMessage.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_AddChatThreadMembers.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_ListChatThreadMembers.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_RemoveChatThreadMember.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_CreateChatThread.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_DeleteChatThread.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_GetChatThread.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_ListChatThreadsWithPageSize.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_UpdateChatThreadTopic.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/CommunicationIdentity.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/CreateIdentity.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/DeleteIdentity.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/IssueToken.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/UpdateIdentity.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/communicationservicessms.json create mode 100644 specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/examples/send.json create mode 100644 specification/communication/data-plane/readme.csharp.md create mode 100644 specification/communication/data-plane/readme.md create mode 100644 specification/communication/data-plane/readme.python.md create mode 100644 specification/communication/data-plane/readme.ruby.md create mode 100644 specification/communication/data-plane/readme.typescript.md diff --git a/cSpell.json b/cSpell.json index 794394747940..15c786ff967f 100644 --- a/cSpell.json +++ b/cSpell.json @@ -729,5 +729,12 @@ "Fpushpins" ] } + , + { + "filename": "**/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json", + "words": [ + "readreceipts" + ] + } ] } diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json new file mode 100644 index 000000000000..73e83b57a414 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json @@ -0,0 +1,1617 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Chat Service", + "description": "Azure Communication Chat Service", + "contact": { + "email": "acsdevexdisc@microsoft.com" + }, + "version": "2020-09-21-preview2" + }, + "paths": { + "/chat/threads/{chatThreadId}/readreceipts": { + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets read receipts for a thread.", + "operationId": "ListChatReadReceipts", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get the read receipts for.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the requested `ReadReceipt` resources.", + "schema": { + "$ref": "#/definitions/ReadReceiptsCollection" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get thread read receipts": { + "$ref": "./examples/Conversations_ListChatReadReceipts.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + }, + "post": { + "tags": [ + "Threads" + ], + "summary": "Sends a read receipt event to a thread, on behalf of a user.", + "operationId": "SendChatReadReceipt", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to send the read receipt event to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Read receipt details.", + "required": true, + "schema": { + "$ref": "#/definitions/SendReadReceiptRequest" + } + } + ], + "responses": { + "201": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send read receipt": { + "$ref": "./examples/Conversations_SendChatReadReceipt.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/messages": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Sends a message to a thread.", + "operationId": "SendChatMessage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to send the message to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Details of the message to send.", + "required": true, + "schema": { + "$ref": "#/definitions/SendChatMessageRequest" + } + } + ], + "responses": { + "201": { + "description": "Message sent, the `Location` header contains the URL for the newly sent message.", + "schema": { + "$ref": "#/definitions/SendChatMessageResult" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Send Message": { + "$ref": "./examples/Messages_SendChatMessage.json" + } + } + }, + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a list of messages from a thread.", + "operationId": "ListChatMessages", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id of the message.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of messages to be returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get messages up to. The timestamp should be in ISO8601 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ChatMessagesCollection" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get messages with pagination (max page size)": { + "$ref": "./examples/Messages_ListChatMessagesWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}/messages/{chatMessageId}": { + "get": { + "tags": [ + "Messages" + ], + "summary": "Gets a message by id.", + "operationId": "GetChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `Message` resource.", + "schema": { + "$ref": "#/definitions/ChatMessage" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get Message": { + "$ref": "./examples/Messages_GetChatMessage.json" + } + } + }, + "patch": { + "tags": [ + "Messages" + ], + "summary": "Updates a message.", + "operationId": "UpdateChatMessage", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Details of the request to update the message.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatMessageRequest" + } + } + ], + "responses": { + "200": { + "description": "Message is successfully updated." + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update message content": { + "$ref": "./examples/Messages_UpdateChatMessage.json" + } + } + }, + "delete": { + "tags": [ + "Messages" + ], + "summary": "Deletes a message.", + "operationId": "DeleteChatMessage", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The thread id to which the message was sent.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMessageId", + "description": "The message id.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete message": { + "$ref": "./examples/Messages_DeleteChatMessage.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/typing": { + "post": { + "tags": [ + "Messages" + ], + "summary": "Posts a typing event to a thread, on behalf of a user.", + "operationId": "SendTypingNotification", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Post typing event to a thread": { + "$ref": "./examples/Messages_SendTypingNotification.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/members": { + "get": { + "tags": [ + "ThreadMembers" + ], + "summary": "Gets the members of a thread.", + "operationId": "ListChatThreadMembers", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get members for.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns the members of a thread.", + "schema": { + "$ref": "#/definitions/ChatThreadMembersCollection" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get thread members": { + "$ref": "./examples/ThreadMembers_ListChatThreadMembers.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + }, + "post": { + "tags": [ + "ThreadMembers" + ], + "summary": "Adds thread members to a thread. If members already exist, no change occurs.", + "operationId": "AddChatThreadMembers", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Id of the thread to add members to.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Thread members to be added to the thread.", + "required": true, + "schema": { + "$ref": "#/definitions/AddChatThreadMembersRequest" + } + } + ], + "responses": { + "207": { + "description": "Multi status response, containing the status for the thread member addition operations." + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Add thread members": { + "$ref": "./examples/ThreadMembers_AddChatThreadMembers.json" + } + } + } + }, + "/chat/threads/{chatThreadId}/members/{chatMemberId}": { + "delete": { + "tags": [ + "ThreadMembers" + ], + "summary": "Remove a member from a thread.", + "operationId": "RemoveChatThreadMember", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to remove the member from.", + "required": true, + "type": "string" + }, + { + "in": "path", + "name": "chatMemberId", + "description": "Id of the thread member to remove from the thread.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Remove thread member": { + "$ref": "./examples/ThreadMembers_RemoveChatThreadMember.json" + } + } + } + }, + "/chat/threads": { + "post": { + "tags": [ + "Threads" + ], + "summary": "Creates a chat thread.", + "operationId": "CreateChatThread", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Request payload for creating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateChatThreadRequest" + } + } + ], + "responses": { + "207": { + "description": "Multi status response, containing the status for the thread creation and the thread member addition operations.\r\nIf the thread was created successfully, `Location` header would contain the URL for the newly created thread.", + "schema": { + "$ref": "#/definitions/MultiStatusResponse" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Create chat thread": { + "$ref": "./examples/Threads_CreateChatThread.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets the list of chat threads of a user.", + "operationId": "ListChatThreads", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "maxPageSize", + "description": "The maximum number of chat threads returned per page.", + "type": "integer", + "format": "int32" + }, + { + "in": "query", + "name": "startTime", + "description": "The earliest point in time to get chat threads up to. The timestamp should be in ISO8601 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "format": "date-time" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `GetThreadsResponse` resource.", + "schema": { + "$ref": "#/definitions/ChatThreadsInfoCollection" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get threads with pagination (Max Page Size)": { + "$ref": "./examples/Threads_ListChatThreadsWithPageSize.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + } + } + }, + "/chat/threads/{chatThreadId}": { + "patch": { + "tags": [ + "Threads" + ], + "summary": "Updates a thread's properties.", + "operationId": "UpdateChatThread", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "The id of the thread to update.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Request payload for updating a chat thread.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateChatThreadRequest" + } + } + ], + "responses": { + "200": { + "description": "Thread was successfully updated." + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Update chat thread topic": { + "$ref": "./examples/Threads_UpdateChatThreadTopic.json" + } + } + }, + "get": { + "tags": [ + "Threads" + ], + "summary": "Gets a chat thread.", + "operationId": "GetChatThread", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to get.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The action returns a `Thread` resource.", + "schema": { + "$ref": "#/definitions/ChatThread" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Get chat thread": { + "$ref": "./examples/Threads_GetChatThread.json" + } + } + }, + "delete": { + "tags": [ + "Threads" + ], + "summary": "Deletes a thread.", + "operationId": "DeleteChatThread", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "chatThreadId", + "description": "Thread id to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "Request successful." + }, + "401": { + "description": "Unauthorized", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "429": { + "description": "Too many requests", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + }, + "503": { + "description": "Service unavailable", + "schema": { + "$ref": "#/definitions/Error" + }, + "x-ms-error-response": true + } + }, + "x-ms-examples": { + "Delete chat thread": { + "$ref": "./examples/Threads_DeleteChatThread.json" + } + } + } + } + }, + "definitions": { + "ReadReceipt": { + "description": "A read receipt indicates the time a chat message was read by a recipient.", + "type": "object", + "properties": { + "senderId": { + "description": "Read receipt sender id.", + "type": "string", + "readOnly": true, + "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + "chatMessageId": { + "description": "Id for the chat message that has been read. This id is generated by the server.", + "type": "string", + "readOnly": true, + "example": "1591137790240" + }, + "readOn": { + "format": "date-time", + "description": "Read receipt timestamp. The timestamp is in ISO8601 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "readOnly": true, + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ReadReceiptsCollection": { + "type": "object", + "properties": { + "value": { + "description": "Collection of read receipts.", + "type": "array", + "items": { + "$ref": "#/definitions/ReadReceipt" + }, + "readOnly": true + }, + "nextLink": { + "description": "If there are more read receipts that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "Error": { + "type": "object", + "properties": { + "code": { + "type": "string", + "readOnly": true + }, + "message": { + "type": "string", + "readOnly": true + }, + "target": { + "type": "string", + "readOnly": true + }, + "innerErrors": { + "type": "array", + "items": { + "$ref": "#/definitions/Error" + }, + "readOnly": true + } + } + }, + "SendReadReceiptRequest": { + "description": "Request payload for sending a read receipt.", + "required": [ + "chatMessageId" + ], + "type": "object", + "properties": { + "chatMessageId": { + "description": "Id of the latest chat message read by the user.", + "type": "string", + "example": "1592435762364" + } + } + }, + "ChatMessagePriority": { + "description": "The chat message priority.", + "enum": [ + "Normal", + "High" + ], + "type": "string", + "x-ms-enum": { + "name": "ChatMessagePriority", + "modelAsString": true + } + }, + "SendChatMessageRequest": { + "description": "Details of the message to send.", + "required": [ + "content" + ], + "type": "object", + "properties": { + "priority": { + "$ref": "#/definitions/ChatMessagePriority" + }, + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Bob Admin" + } + } + }, + "SendChatMessageResult": { + "description": "Result of the send message operation.", + "type": "object", + "properties": { + "id": { + "description": "A server-generated message id.", + "type": "string", + "readOnly": true, + "example": "123456789" + } + } + }, + "ChatMessage": { + "type": "object", + "properties": { + "id": { + "description": "The id of the chat message. This id is server generated.", + "type": "string", + "readOnly": true, + "example": "123456789" + }, + "type": { + "description": "Type of the chat message.\r\n \r\nPossible values:\r\n - Text\r\n - ThreadActivity/TopicUpdate\r\n - ThreadActivity/AddMember\r\n - ThreadActivity/DeleteMember", + "type": "string", + "example": "Text" + }, + "priority": { + "$ref": "#/definitions/ChatMessagePriority" + }, + "version": { + "description": "Version of the chat message.", + "type": "string", + "readOnly": true + }, + "content": { + "description": "Content of the chat message.", + "type": "string", + "example": "Come one guys, lets go for lunch together." + }, + "senderDisplayName": { + "description": "The display name of the chat message sender. This property is used to populate sender name for push notifications.", + "type": "string", + "example": "Jane" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat message arrived at the server. The timestamp is in ISO8601 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "readOnly": true, + "example": "2020-10-30T10:50:50Z" + }, + "senderId": { + "description": "The id of the chat message sender.", + "type": "string", + "readOnly": true, + "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + "deletedOn": { + "format": "date-time", + "description": "The timestamp when the chat message was deleted. The timestamp is in ISO8601 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + }, + "editedOn": { + "format": "date-time", + "description": "The timestamp when the chat message was edited. The timestamp is in ISO8601 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatMessagesCollection": { + "description": "Collection of chat messages for a particular chat thread.", + "type": "object", + "properties": { + "value": { + "description": "Collection of chat messages.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatMessage" + }, + "readOnly": true + }, + "nextLink": { + "description": "If there are more chat messages that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatMessageRequest": { + "type": "object", + "properties": { + "content": { + "description": "Chat message content.", + "type": "string", + "example": "Let's go for lunch together." + }, + "priority": { + "$ref": "#/definitions/ChatMessagePriority" + } + } + }, + "ChatThreadMember": { + "description": "A member of the chat thread.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "The id of the chat thread member in the format `8:acs:ResourceId_AcsUserId`.", + "type": "string", + "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + "displayName": { + "description": "Display name for the chat thread member.", + "type": "string", + "example": "Bob" + }, + "shareHistoryTime": { + "format": "date-time", + "description": "Time from which the chat history is shared with the member. The timestamp is in ISO8601 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatThreadMembersCollection": { + "description": "Collection of thread members belong to a particular thread.", + "type": "object", + "properties": { + "value": { + "description": "Chat thread members.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadMember" + } + }, + "nextLink": { + "description": "If there are more chat threads that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "AddChatThreadMembersRequest": { + "description": "Thread members to be added to the thread.", + "required": [ + "members" + ], + "type": "object", + "properties": { + "members": { + "description": "Members to add to a chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadMember" + } + } + } + }, + "CreateChatThreadRequest": { + "description": "Request payload for creating a chat thread.", + "required": [ + "members", + "topic" + ], + "type": "object", + "properties": { + "topic": { + "description": "The chat thread topic.", + "type": "string", + "example": "Lunch Thread" + }, + "members": { + "description": "Members to be added to the chat thread.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadMember" + } + } + } + }, + "IndividualStatusResponse": { + "type": "object", + "properties": { + "id": { + "description": "Identifies the resource to which the individual status corresponds.", + "type": "string", + "readOnly": true + }, + "statusCode": { + "format": "int32", + "description": "The status code of the resource operation.\r\n \r\nPossible values include:\r\n 200 for a successful update or delete,\r\n 201 for successful creation,\r\n 400 for a malformed input,\r\n 403 for lacking permission to execute the operation,\r\n 404 for resource not found.", + "type": "integer", + "readOnly": true + }, + "message": { + "description": "The message explaining why the operation failed for the resource identified by the key; null if the operation succeeded.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Identifies the type of the resource to which the individual status corresponds.", + "type": "string", + "readOnly": true + } + } + }, + "MultiStatusResponse": { + "type": "object", + "properties": { + "multipleStatus": { + "description": "The list of status information for each resource in the request.", + "type": "array", + "items": { + "$ref": "#/definitions/IndividualStatusResponse" + }, + "readOnly": true + } + } + }, + "ChatThreadInfo": { + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "readOnly": true, + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "isDeleted": { + "description": "Flag if a chat thread is soft deleted.", + "type": "boolean", + "example": false + }, + "lastMessageReceivedOn": { + "format": "date-time", + "description": "The timestamp when the last message arrived at the server. The timestamp is in ISO8601 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "readOnly": true, + "example": "2020-10-30T10:50:50Z" + } + } + }, + "ChatThreadsInfoCollection": { + "description": "Collection of chat threads.", + "type": "object", + "properties": { + "value": { + "description": "Collection of chat threads.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadInfo" + }, + "readOnly": true + }, + "nextLink": { + "description": "If there are more chat threads that can be retrieved, the next link will be populated.", + "type": "string", + "readOnly": true + } + } + }, + "UpdateChatThreadRequest": { + "type": "object", + "properties": { + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Thread" + } + } + }, + "ChatThread": { + "type": "object", + "properties": { + "id": { + "description": "Chat thread id.", + "type": "string", + "readOnly": true, + "example": "19:uni01_uy5ucb66ugp3lrhe7pxso6xx4hsmm3dl6eyjfefv2n6x3rrurpea@thread.v2" + }, + "topic": { + "description": "Chat thread topic.", + "type": "string", + "example": "Lunch Chat thread" + }, + "createdOn": { + "format": "date-time", + "description": "The timestamp when the chat thread was created. The timestamp is in ISO8601 format: `yyyy-MM-ddTHH:mm:ssZ`.", + "type": "string", + "readOnly": true, + "example": "2020-10-30T10:50:50Z" + }, + "createdBy": { + "description": "Id of the chat thread owner.", + "type": "string", + "readOnly": true, + "example": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + "members": { + "description": "Chat thread members.", + "type": "array", + "items": { + "$ref": "#/definitions/ChatThreadMember" + } + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "in": "query", + "name": "api-version", + "description": "Version of API to invoke.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Endpoint": { + "in": "path", + "name": "endpoint", + "description": "The endpoint of the Azure Communication resource.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + }, + "securityDefinitions": { + "Authorization": { + "type": "apiKey", + "name": "Authorization", + "in": "header", + "description": "An ACS (Azure Communication Services) user access token." + } + }, + "security": [ + { + "Authorization": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_ListChatReadReceipts.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_ListChatReadReceipts.json new file mode 100644 index 000000000000..44d3ad9bd31e --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_ListChatReadReceipts.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "senderId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "chatMessageId": "1591137790240", + "readOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "senderId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c00a", + "chatMessageId": "1591768249318", + "readOn": "2020-06-06T05:55:41.6460000Z" + } + ], + "nextLink": null + } + }, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_SendChatReadReceipt.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_SendChatReadReceipt.json new file mode 100644 index 000000000000..45ab2f0680bb --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Conversations_SendChatReadReceipt.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "body": { + "chatMessageId": "1591137790240" + } + }, + "responses": { + "201": {}, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_DeleteChatMessage.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_DeleteChatMessage.json new file mode 100644 index 000000000000..00551b5f9d65 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_DeleteChatMessage.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "chatMessageId": "1591768249318" + }, + "responses": { + "204": {}, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_GetChatMessage.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_GetChatMessage.json new file mode 100644 index 000000000000..70d7dacb2aac --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_GetChatMessage.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "chatMessageId": "1591768249318" + }, + "responses": { + "200": { + "body": { + "id": "1591768249318", + "type": "Text", + "version": "1599016601134", + "priority": "Normal", + "content": "Let's head out for lunch in 15 minutes.", + "senderDisplayName": "Jane", + "createdOn": "2020-06-10T05:50:49.3180000Z", + "senderId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + } + }, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_ListChatMessagesWithPageSize.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_ListChatMessagesWithPageSize.json new file mode 100644 index 000000000000..0323cbabc954 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_ListChatMessagesWithPageSize.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "19:453dafb77b26481ea2e73bcada0324af@thread.v2", + "maxPageSize": 5 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "1593107077690", + "type": "Text", + "priority": "Normal", + "version": "1593107077683", + "content": "So where should we get lunch from today?", + "senderDisplayName": "Jane", + "createdOn": "2020-06-25T17:44:37.6830000Z", + "senderId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + { + "id": "1593107077683", + "type": "Text", + "priority": "Normal", + "version": "1593107077683", + "content": "Let's use this chat to decide what to get for lunch today.", + "senderDisplayName": "Jane", + "createdOn": "2020-06-25T17:44:37.6830000Z", + "senderId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + { + "id": "1593107046498", + "type": "Text", + "priority": "Normal", + "version": "1593107046498", + "content": "Good morning everyone!", + "senderDisplayName": "Jane", + "createdOn": "2020-06-25T17:44:06.4980000Z", + "senderId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b" + }, + { + "id": "1593106976785", + "type": "ThreadActivity/TopicUpdate", + "priority": "Normal", + "version": "1593106976785", + "content": "15931069767858:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10bLunch", + "createdOn": "2020-06-25T17:42:56.7850000Z", + "senderId": "19:453dafb77b26481ea2e73bcada0324af@thread.v2" + }, + { + "id": "1593106976753", + "type": "ThreadActivity/AddMember", + "priority": "Normal", + "version": "1593106976753", + "content": "15931069767538:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b15931069765668:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b8:acs:29d8ac59-6011-44dc-87c0-1f9f93dbc713_2a711a-6c8ffcdc418:acs:29d8ac59-6011-44dc-87c0-1f9f93dbc713_2a711a-6c8ffcdc418:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "createdOn": "2020-06-25T17:42:56.7530000Z", + "senderId": "19:453dafb77b26481ea2e73bcada0324af@thread.v2" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads/19:453dafb77b26481ea2e73bcada0324af@thread.v2/messages?syncState=3e4700000031393a756e6930315f7a626e68336e74326466756666657a6333736f7837646f67377766686b36793571653272776c6e66686c68647a69726968647071407468726561642e763201451fe6e77201000004357fea72010000&startTime=0&maxPageSize=5&api-version=2020-09-21-preview2" + } + }, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendChatMessage.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendChatMessage.json new file mode 100644 index 000000000000..df0395bea381 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendChatMessage.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "body": { + "priority": "Normal", + "content": "Let's head out for lunch in 15 minutes.", + "senderDisplayName": "Jane" + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://contoso.westus.communications.azure.com/chat/threads/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/messages/1593072104708" + }, + "body": { + "id": "1593072104708" + } + }, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendTypingNotification.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendTypingNotification.json new file mode 100644 index 000000000000..6435d0e29153 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_SendTypingNotification.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "x-skypetoken": "token", + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345" + }, + "responses": { + "200": {}, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_UpdateChatMessage.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_UpdateChatMessage.json new file mode 100644 index 000000000000..f77e9c5e8dd9 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Messages_UpdateChatMessage.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "chatMessageId": "1591768249318", + "body": { + "content": "Updated message content" + } + }, + "responses": { + "200": {}, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_AddChatThreadMembers.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_AddChatThreadMembers.json new file mode 100644 index 000000000000..17cc78cfb022 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_AddChatThreadMembers.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "19:f2167429acf6482880c6b7790a9086c1@thread.v2", + "body": { + "members": [ + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "displayName": "Alex", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "displayName": "Peter", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "displayName": "Rama", + "shareHistoryTime": "2020-06-06T05:55:41Z" + } + ] + } + }, + "responses": { + "207": { + "multipleStatus": [ + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "statusCode": 403, + "message": "Permissions check failed" + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "statusCode": 201 + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "statusCode": 201 + } + ] + }, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_ListChatThreadMembers.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_ListChatThreadMembers.json new file mode 100644 index 000000000000..2f7522e9e0a1 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_ListChatThreadMembers.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "19:f2167429acf6482880c6b7790a9086c1@thread.v2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "displayName": "Jane", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "displayName": "Alex", + "shareHistoryTime": "2020-06-06T05:55:41Z" + } + ], + "nextLink": null + } + }, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_RemoveChatThreadMember.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_RemoveChatThreadMember.json new file mode 100644 index 000000000000..e4f34c5ab80d --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/ThreadMembers_RemoveChatThreadMember.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "19:f2167429acf6482880c6b7790a9086c1@thread.v2", + "chatMemberId": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a" + }, + "responses": { + "204": {}, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_CreateChatThread.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_CreateChatThread.json new file mode 100644 index 000000000000..f2e8c4bb469c --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_CreateChatThread.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "body": { + "topic": "Lunch", + "members": [ + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "displayName": "Jane" + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "displayName": "Alex" + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "displayName": "Bob" + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "displayName": "Peter" + } + ] + } + }, + "responses": { + "207": { + "headers": { + "Location": "https://contoso.westus.communications.azure.com/chat/threads/19%3Auni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2" + }, + "body": { + "multipleStatus": [ + { + "id": "19:b355e41860604e7dacd072d586f47818@thread.v2", + "statusCode": 201 + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "statusCode": 201 + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "statusCode": 201 + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10c", + "statusCode": 201 + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "statusCode": 403, + "message": "Permissions check failed" + } + ] + } + }, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_DeleteChatThread.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_DeleteChatThread.json new file mode 100644 index 000000000000..8d2b13efb17a --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_DeleteChatThread.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "19:9525281ac1f947fc884bcee1a9f983c2@thread.v2" + }, + "responses": { + "204": {}, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_GetChatThread.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_GetChatThread.json new file mode 100644 index 000000000000..2bcaff7565cb --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_GetChatThread.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2" + }, + "responses": { + "200": { + "body": { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Lunch", + "createdOn": "2020-06-06T05:55:41.6460000Z", + "createdBy": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "members": [ + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10a", + "shareHistoryTime": "2020-06-06T05:55:41Z" + }, + { + "id": "8:acs:8540c0de-899f-5cce-acb5-3ec493af3800_0e59221d-0c1d-46ae-9544-c963ce56c10b", + "shareHistoryTime": "2020-06-06T05:55:41Z" + } + ] + } + }, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_ListChatThreadsWithPageSize.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_ListChatThreadsWithPageSize.json new file mode 100644 index 000000000000..07a5dc602c3d --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_ListChatThreadsWithPageSize.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "maxmaxPageSize": 5 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "topic": "Chat with Samantha", + "isDeleted": false, + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:a0dfe5fc10e04a7f8d8a64d455f4196d@thread.v2", + "topic": "Presentation Brainstorming", + "isDeleted": false, + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:uni01_n242d2bzammtwxiib7pbjtozeevjqzavzn654ku3dajocexfo2na@thread.v2", + "topic": "Chat with Alex", + "isDeleted": false, + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:0062022a28be4e0983734f7e45cd8566@thread.v2", + "topic": "Lunch", + "isDeleted": false, + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + }, + { + "id": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpe@thread.v2", + "topic": "Chat with Bob", + "isDeleted": false, + "lastMessageReceivedOn": "2020-06-06T05:55:41.6460000Z" + } + ], + "nextLink": "https://contoso.westus.communications.azure.com/chat/threads?syncState=W3sic3RhcnQiOiIyMDIwLTA2LTIzVDIzOjMyOjQ3LjMwNSswMDowMCIsImVuZCI6IjIwMjAtMDYtMjVUMDY6NTY6MjMuNjk2KzAwOjAwIn0seyJzdGFydCI6IjE5NzAtMDEtMDFUMDA6MDA6MDArMDA6MDAiLCJlbmQiOiIxOTcwLTAxLTAxVDAwOjAwOjAwKzAwOjAwIn1d&api-version=2020-09-21-preview2&maxmaxPageSize=5" + } + }, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_UpdateChatThreadTopic.json b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_UpdateChatThreadTopic.json new file mode 100644 index 000000000000..fc22cf010c46 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/examples/Threads_UpdateChatThreadTopic.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "endpoint": "https://contoso.westus.communications.azure.com", + "api-version": "2020-09-21-preview2", + "chatThreadId": "19:uni01_zbnh3nt2dfuffezc3sox7dog7wfhk6y5qe2rwlnfhlhdzirihdpq@thread.v2", + "body": { + "topic": "Updated Thread Topic" + } + }, + "responses": { + "200": {}, + "401": { + "body": { + "code": "Unauthorized", + "message": "Request is not authorized." + } + }, + "403": { + "body": { + "code": "Forbidden", + "message": "User is not allowed to perform specified action." + } + }, + "429": { + "body": { + "code": "TooManyRequests", + "message": "Rate limit exceeded." + } + }, + "503": { + "body": { + "code": "ServiceUnavailable", + "message": "The server is currently unable to handle the request." + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/CommunicationIdentity.json b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/CommunicationIdentity.json new file mode 100644 index 000000000000..c87ad2bfe5c3 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/CommunicationIdentity.json @@ -0,0 +1,264 @@ +{ + "swagger": "2.0", + "info": { + "title": "CommunicationIdentityClient", + "description": "Azure Communication Identity Service", + "contact": { + "email": "acsdevexdisc@microsoft.com" + }, + "version": "2020-07-20-preview2" + }, + "paths": { + "/identities": { + "post": { + "tags": [ + "Identity" + ], + "summary": "Create a new identity.", + "operationId": "CommunicationIdentity_Create", + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "api-version", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK - Returns the created identity.", + "schema": { + "$ref": "#/definitions/CommunicationIdentity" + } + } + }, + "x-ms-examples": { + "Create Identity": { + "$ref": "./examples/CreateIdentity.json" + } + } + } + }, + "/identities/{id}": { + "delete": { + "tags": [ + "Identity" + ], + "summary": "Delete the identity, revoke all tokens of the identity and delete all associated data.", + "operationId": "CommunicationIdentity_Delete", + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity to be deleted.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "required": true, + "type": "string" + } + ], + "responses": { + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Delete Identity": { + "$ref": "./examples/DeleteIdentity.json" + } + } + }, + "patch": { + "tags": [ + "Identity" + ], + "summary": "Update an Identity.", + "operationId": "CommunicationIdentity_Update", + "consumes": [ + "application/merge-patch+json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "body", + "description": "The properties of the identity to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationIdentityUpdateRequest" + } + } + ], + "responses": { + "204": { + "description": "Success" + } + }, + "x-ms-examples": { + "Update Identity": { + "$ref": "./examples/UpdateIdentity.json" + } + } + } + }, + "/identities/{id}/token": { + "post": { + "tags": [ + "Token" + ], + "summary": "Generate a new token for an identity.", + "operationId": "CommunicationIdentity_IssueToken", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "path", + "name": "id", + "description": "Identifier of the identity to issue token for.", + "required": true, + "type": "string" + }, + { + "in": "query", + "name": "api-version", + "required": true, + "type": "string" + }, + { + "in": "body", + "name": "body", + "description": "Requesting scopes for the new token.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationTokenRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/CommunicationIdentityToken" + } + } + }, + "x-ms-examples": { + "Issue Token": { + "$ref": "./examples/IssueToken.json" + } + } + } + } + }, + "definitions": { + "CommunicationIdentity": { + "description": "A communication identity.", + "required": [ + "id" + ], + "type": "object", + "properties": { + "id": { + "description": "Identifier of the identity.", + "type": "string" + } + } + }, + "CommunicationIdentityUpdateRequest": { + "type": "object", + "properties": { + "tokensValidFrom": { + "format": "date-time", + "description": "All tokens that are issued prior to this time will be revoked.", + "type": "string" + } + } + }, + "CommunicationTokenRequest": { + "required": [ + "scopes" + ], + "type": "object", + "properties": { + "scopes": { + "description": "List of scopes attached to the token.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CommunicationIdentityToken": { + "required": [ + "expiresOn", + "id", + "token" + ], + "type": "object", + "properties": { + "id": { + "description": "Identifier of the identity owning the token.", + "type": "string" + }, + "token": { + "description": "The token issued for the identity.", + "type": "string" + }, + "expiresOn": { + "format": "date-time", + "description": "The expiry time of the token.", + "type": "string" + } + } + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "name": "endpoint", + "description": "Auth and Identity endpoint", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + ] + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/CreateIdentity.json b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/CreateIdentity.json new file mode 100644 index 000000000000..a7a69a592539 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/CreateIdentity.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-07-20-preview2", + "content-type": "application/json", + "endpoint": "https://contoso.communication.azure.com/identities" + }, + "responses": { + "200": { + "body": { + "id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081" + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/DeleteIdentity.json b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/DeleteIdentity.json new file mode 100644 index 000000000000..1a7eec13edb8 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/DeleteIdentity.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-07-20-preview2", + "content-type": "application/json", + "id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081", + "endpoint": "https://contoso.communication.azure.com/identities" + }, + "responses": { + "204": {} + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/IssueToken.json b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/IssueToken.json new file mode 100644 index 000000000000..b63e6b9c2264 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/IssueToken.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-07-20-preview2", + "content-type": "application/merge-patch+json", + "id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081", + "body": { + "scopes": [ + "chat" + ] + }, + "endpoint": "https://contoso.communication.azure.com/identities/" + }, + "responses": { + "200": { + "body": { + "id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081", + "token": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjEwMl9pbnQiLCJ0eXAiOiJKV1QifQ.eyJza3lwZWlkIjoiYWNzOjJkZWU1M2I0LTM2OGItNDViNC1hYjUyLTg0OTNmYjExNzY1Ml8wMDAwMDAwNS0xNGIwLWIwM2QtY2NjYy1iYWExZTEzYzAwMDEiLCJzY3AiOjE3OTIsImNzaSI6IjE1OTk2ODc1NzkiLCJpYXQiOjE1OTk2ODc1NzksImV4cCI6MTU5OTc3Mzk3OSwiYWNzU2NvcGUiOiJjaGF0IiwicmVzb3VyY2VJZCI6IjJkZWU1M2I0LTM2OGItNDViNC1hYjUyLTg0OTNmYjExNzY1MiJ9.S8Pryk7MVe0L8_KcTOjsGaU_6FXmcupVS8X73kJ2FW1CAotyJZb0YUoft_iXkbnTpJ3XK01SyhaXHcT48tXTsi1NcvyUqDk9u4rVKZkheA2F4ddLKYckO-RBw4mCHxlwsuiALNesR0MruhgiOSE1F0h_djDn6oKewSkyfd1FTWVqReeY1oIY4U0yi7_B8u3zNPiEFlv-Aqe4y1ISqi0009lt2u3EApjQ6pOIP8Jk9HAqbINwi2_lN5VAxUgK1XqvMBsiBmiB7fEfh-dNxB9tgH-tTGZQfRSprkjg6_KBVdYY7DTSr80J7Qez4JjoHwQ22DYKF8mleuFOysbTlLD0AA", + "expiresOn": "2020-09-10T21:39:39.3244584+00:00" + } + } + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/UpdateIdentity.json b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/UpdateIdentity.json new file mode 100644 index 000000000000..c6ee654739d9 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/examples/UpdateIdentity.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-07-20-preview2", + "content-type": "application/merge-patch+json", + "id": "8:acs:2dee53b4-368b-45b4-ab52-8493fb117652_00000005-14a2-493b-8a72-5a3a0d000081", + "endpoint": "https://contoso.communication.azure.com/identities/", + "body": { + "tokensValidFrom": "2017-04-17T05:04:18.070Z" + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/communicationservicessms.json b/specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/communicationservicessms.json new file mode 100644 index 000000000000..0d989bdbeee6 --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/communicationservicessms.json @@ -0,0 +1,145 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication SMS Service", + "description": "Azure Communication SMS Service", + "contact": { + "email": "acsdevexdisc@microsoft.com" + }, + "version": "2020-07-20-preview1" + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/sms": { + "post": { + "tags": [ + "Sms" + ], + "summary": "Sends a SMS message from a phone number that belongs to the authenticated account.", + "operationId": "Sms_Send", + "x-ms-examples": { + "SuccessfulSend": { + "$ref": "./examples/send.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "SendMessageRequest", + "description": "Represents the body of the send message request.", + "required": true, + "schema": { + "$ref": "#/definitions/SendMessageRequest" + } + }, + { + "name": "api-version", + "in": "query", + "description": "Version of API to invoke.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "SMS message is successfully scheduled for sending.", + "schema": { + "$ref": "#/definitions/SendSmsResponse" + } + } + } + } + } + }, + "definitions": { + "SendSmsOptions": { + "description": "Optional configuration for sending SMS messages", + "type": "object", + "properties": { + "enableDeliveryReport": { + "description": "Enable this flag to receive a delivery report for this message on the Azure Resource EventGrid", + "type": "boolean" + } + } + }, + "SendMessageRequest": { + "description": "Represents the properties of a send message request.", + "required": [ + "message", + "to", + "from" + ], + "type": "object", + "properties": { + "from": { + "description": "The sender's phone number in E.164 format that is owned by the authenticated account.", + "type": "string" + }, + "to": { + "description": "The recipients' phone number in E.164 format. In this version, only one recipient in the list is supported.", + "maxLength": 1, + "minLength": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "message": { + "description": "The contents of the message that will be sent to the recipient. The allowable content is defined by RFC 5724.", + "maxLength": 2048, + "minLength": 0, + "type": "string" + }, + "sendSmsOptions": { + "$ref": "#/definitions/SendSmsOptions" + } + } + }, + "SendSmsResponse": { + "description": "Response for a successful send Sms request.", + "type": "object", + "properties": { + "messageId": { + "description": "The identifier of the outgoing SMS message", + "type": "string" + } + } + } + }, + "parameters": { + "Endpoint": { + "in": "path", + "name": "endpoint", + "description": "The endpoint of the Azure Communication resource.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/examples/send.json b/specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/examples/send.json new file mode 100644 index 000000000000..306feda3416f --- /dev/null +++ b/specification/communication/data-plane/Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/examples/send.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "SendMessageRequest": { + "from": "+18001110000", + "to": [ + "+18002220000" + ], + "message": "Hello world!", + "sendSmsOptions": { + "enableDeliveryReport": true + } + }, + "api-version": "2020-07-20-preview1", + "endpoint": "https://contoso.communication.azure.com/" + }, + "responses": { + "200": { + "body": { + "messageId": "Outgoing_20200610203725bfd4ba70-70bf-4f77-925d-c0bdb5161bb3" + } + } + } +} diff --git a/specification/communication/data-plane/readme.csharp.md b/specification/communication/data-plane/readme.csharp.md new file mode 100644 index 000000000000..2efd3715cdc3 --- /dev/null +++ b/specification/communication/data-plane/readme.csharp.md @@ -0,0 +1,15 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.CommunicationServices + output-folder: $(csharp-sdks-folder)/communicationservices/management/Microsoft.CommunicationServices/GeneratedProtocol +``` diff --git a/specification/communication/data-plane/readme.md b/specification/communication/data-plane/readme.md new file mode 100644 index 000000000000..e4d7480f69cd --- /dev/null +++ b/specification/communication/data-plane/readme.md @@ -0,0 +1,91 @@ +# communicationservices + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for communicationservices. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the communicationservices. + +```yaml +openapi-type: data-plane +tag: package-2020-07-20-preview1 +``` + +### Tag: package-2020-07-20-preview1 + +These settings apply only when `--tag=package-2020-07-20-preview1` is specified on the command line. + +```yaml $(tag) == 'package-2020-07-20-preview1' +input-file: + - Microsoft.CommunicationServicesSms/preview/2020-07-20-preview1/communicationservicessms.json +title: + Azure Communication Services +``` + +```yaml +openapi-type: data-plane +tag: package-2020-09-21-preview2 +``` + +### Tag: package-2020-09-21-preview2 + +These settings apply only when `--tag=package-2020-09-21-preview2` is specified on the command line. + +```yaml $(tag) == 'package-2020-09-21-preview2' +input-file: + - Microsoft.CommunicationServicesChat/preview/2020-09-21-preview2/communicationserviceschat.json +title: + Azure Communication Services +``` + +### Tag: package-2020-07-20-preview2 + +These settings apply only when `--tag=package-2020-07-20-preview2` is specified on the command line. + +```yaml $(tag) == 'package-2020-07-20-preview2' +input-file: + - Microsoft.CommunicationServicesIdentity/preview/2020-07-20-preview2/CommunicationIdentity.json +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/communication/data-plane/readme.python.md b/specification/communication/data-plane/readme.python.md new file mode 100644 index 000000000000..f7f55ff2159b --- /dev/null +++ b/specification/communication/data-plane/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: Microsoft.CommunicationServices + package-name: communicationservices + package-version: 2020-04-16-privatepreview + clear-output-folder: true +``` + +```yaml $(python) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt/communicationservices +``` diff --git a/specification/communication/data-plane/readme.ruby.md b/specification/communication/data-plane/readme.ruby.md new file mode 100644 index 000000000000..f521ab44dbf5 --- /dev/null +++ b/specification/communication/data-plane/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_communicationservices +package-version: 2020-04-16-privatepreview +azure-arm: true +``` + +### Tag: package-2020-04-16-privatepreview and ruby + +These settings apply only when `--tag=package-2020-04-16-privatepreview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-04-16-privatepreview' && $(ruby) +namespace: Microsoft.CommunicationServices +output-folder: $(ruby-sdks-folder)/communicationservices +``` diff --git a/specification/communication/data-plane/readme.typescript.md b/specification/communication/data-plane/readme.typescript.md new file mode 100644 index 000000000000..be9f877fd1c2 --- /dev/null +++ b/specification/communication/data-plane/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "communicationservices" + output-folder: "$(typescript-sdks-folder)/packages/communicationservices" + payload-flattening-threshold: 1 + generate-metadata: true +``` From 02aa7ac3e1c3e7649a6b8aad0a9de635cdd8f62a Mon Sep 17 00:00:00 2001 From: Lei Ni <7233663+leni-msft@users.noreply.github.com> Date: Tue, 22 Sep 2020 12:27:52 +0800 Subject: [PATCH 19/37] Remove deprecated all-api-versions in readme.md (#10863) * run multiapi * Remove deprecated all-api-versions * Manual remove --- .../resource-manager/readme.md | 24 - .../addons/resource-manager/readme.md | 25 - .../readme.azureresourceschema.md | 14 +- .../resource-manager/readme.md | 24 - .../advisor/resource-manager/readme.md | 27 - .../readme.azureresourceschema.md | 12 + .../resource-manager/readme.md | 32 - .../resource-manager/readme.md | 27 - .../apimanagement/resource-manager/readme.md | 227 ----- .../resource-manager/readme.md | 27 - .../resource-manager/readme.md | 48 - .../appplatform/resource-manager/readme.md | 24 - .../attestation/resource-manager/readme.md | 24 - .../authorization/resource-manager/readme.md | 35 - .../automanage/resource-manager/readme.md | 23 - .../automation/resource-manager/readme.md | 57 -- .../azure-kusto/resource-manager/readme.md | 31 - .../resource-manager/readme.md | 26 - .../readme.azureresourceschema.md | 12 + .../azuredata/resource-manager/readme.md | 23 - .../azurestack/resource-manager/readme.md | 27 - .../azurestackhci/resource-manager/readme.md | 24 - .../readme.azureresourceschema.md | 24 + .../batch/resource-manager/readme.md | 32 - .../batchai/resource-manager/readme.md | 26 - .../billing/resource-manager/readme.md | 30 - .../blockchain/resource-manager/readme.md | 24 - .../blueprint/resource-manager/readme.md | 28 - .../botservice/resource-manager/readme.md | 25 - specification/cdn/resource-manager/readme.md | 36 - .../changeanalysis/resource-manager/readme.md | 24 - .../cloudshell/resource-manager/readme.md | 24 - .../resource-manager/readme.md | 25 - .../commerce/resource-manager/readme.md | 24 - .../readme.azureresourceschema.md | 13 + .../compute/resource-manager/readme.md | 66 -- .../consumption/resource-manager/readme.md | 38 - .../resource-manager/readme.md | 31 - .../resource-manager/readme.md | 33 - .../readme.azureresourceschema.md | 12 + .../resource-manager/readme.md | 49 - .../cosmos-db/resource-manager/readme.md | 40 - .../readme.azureresourceschema.md | 1 + .../resource-manager/readme.md | 33 - specification/cpim/resource-manager/readme.md | 24 - .../resource-manager/readme.md | 25 - .../resource-manager/readme.md | 24 - .../resource-manager/readme.md | 24 - .../databox/resource-manager/readme.md | 26 - .../databoxedge/resource-manager/readme.md | 26 - .../databricks/resource-manager/readme.md | 24 - .../datacatalog/resource-manager/readme.md | 24 - .../readme.azureresourceschema.md | 7 + .../datafactory/resource-manager/readme.md | 25 - .../resource-manager/readme.md | 25 - .../datalake-store/resource-manager/readme.md | 25 - .../datamigration/resource-manager/readme.md | 126 --- .../datashare/resource-manager/readme.md | 24 - .../resource-manager/readme.md | 25 - .../resource-manager/readme.md | 26 - .../readme.azureresourceschema.md | 24 + .../resource-manager/readme.md | 26 - .../devops/resource-manager/readme.md | 24 - .../devspaces/resource-manager/readme.md | 24 - .../devtestlabs/resource-manager/readme.md | 26 - .../readme.azureresourceschema.md | 12 + .../digitaltwins/resource-manager/readme.md | 25 - specification/dnc/resource-manager/readme.md | 24 - specification/dns/resource-manager/readme.md | 29 - .../domainservices/resource-manager/readme.md | 28 - .../resource-manager/readme.md | 24 - .../eventgrid/resource-manager/readme.md | 33 - .../eventhub/resource-manager/readme.md | 41 - .../frontdoor/resource-manager/readme.md | 42 - .../resource-manager/readme.md | 27 - .../hanaonazure/resource-manager/readme.md | 25 - .../resource-manager/readme.md | 23 - .../hdinsight/resource-manager/readme.md | 38 - .../readme.azureresourceschema.md | 12 + .../healthcareapis/resource-manager/readme.md | 24 - .../hybridcompute/resource-manager/readme.md | 29 - .../resource-manager/readme.md | 25 - .../resource-manager/readme.md | 23 - .../hybridnetwork/resource-manager/readme.md | 29 - .../imagebuilder/resource-manager/readme.md | 26 - .../intune/resource-manager/readme.md | 25 - .../iotcentral/resource-manager/readme.md | 25 - .../readme.azureresourceschema.md | 12 + .../iothub/resource-manager/readme.md | 36 - .../iotspaces/resource-manager/readme.md | 24 - .../keyvault/resource-manager/readme.md | 35 - .../resource-manager/readme.md | 23 - .../labservices/resource-manager/readme.md | 24 - .../logic/resource-manager/readme.md | 28 - .../resource-manager/readme.md | 27 - .../resource-manager/readme.md | 25 - .../resource-manager/readme.md | 24 - .../resource-manager/readme.md | 36 - .../maintenance/resource-manager/readme.md | 25 - .../managednetwork/resource-manager/readme.md | 22 - .../resource-manager/readme.md | 27 - .../resource-manager/readme.md | 30 - .../resource-manager/readme.md | 24 - specification/maps/resource-manager/readme.md | 25 - .../mariadb/resource-manager/readme.md | 34 - .../marketplace/resource-manager/readme.md | 24 - .../resource-manager/readme.md | 24 - .../mediaservices/resource-manager/readme.md | 61 -- .../migrate/resource-manager/readme.md | 26 - .../resource-manager/readme.md | 24 - .../mixedreality/resource-manager/readme.md | 31 - .../monitor/resource-manager/readme.md | 65 -- specification/msi/resource-manager/readme.md | 25 - .../mysql/resource-manager/readme.md | 36 - .../netapp/resource-manager/readme.md | 31 - .../readme.azureresourceschema.md | 1 + .../network/resource-manager/readme.md | 945 ------------------ .../resource-manager/readme.md | 26 - .../resource-manager/readme.md | 68 -- .../resource-manager/readme.md | 24 - .../peering/resource-manager/readme.md | 26 - .../policyinsights/resource-manager/readme.md | 33 - .../readme.azureresourceschema.md | 14 + .../portal/resource-manager/readme.md | 26 - .../postgresql/resource-manager/readme.md | 32 - .../resource-manager/readme.md | 24 - .../resource-manager/readme.md | 24 - .../readme.azureresourceschema.md | 27 + .../privatedns/resource-manager/readme.md | 24 - .../resource-manager/readme.md | 27 - .../resource-manager/readme.md | 32 - .../resource-manager/readme.md | 26 - .../resource-manager/readme.md | 24 - .../redis/resource-manager/readme.md | 28 - .../regionmove/resource-manager/readme.md | 18 - .../relay/resource-manager/readme.md | 29 - .../reservations/resource-manager/readme.md | 27 - .../resourcegraph/resource-manager/readme.md | 27 - .../resourcehealth/resource-manager/readme.md | 27 - .../readme.azureresourceschema.md | 24 + .../resources/resource-manager/readme.md | 79 -- .../scheduler/resource-manager/readme.md | 26 - .../search/resource-manager/readme.md | 29 - .../security/resource-manager/readme.md | 80 -- .../resource-manager/readme.md | 25 - .../serialconsole/resource-manager/readme.md | 24 - .../service-map/resource-manager/readme.md | 24 - .../readme.azureresourceschema.md | 8 +- .../servicebus/resource-manager/readme.md | 42 - .../servicefabric/resource-manager/readme.md | 39 - .../resource-manager/readme.md | 25 - .../signalr/resource-manager/readme.md | 27 - .../softwareplan/resource-manager/readme.md | 25 - .../readme.azureresourceschema.md | 19 +- specification/sql/resource-manager/readme.md | 233 ----- .../resource-manager/readme.md | 24 - .../resource-manager/readme.md | 24 - .../storage/resource-manager/readme.md | 52 - .../storagecache/resource-manager/readme.md | 26 - .../resource-manager/readme.md | 25 - .../storagesync/resource-manager/readme.md | 31 - .../resource-manager/readme.md | 24 - .../readme.azureresourceschema.md | 31 + .../resource-manager/readme.md | 28 - .../subscription/resource-manager/readme.md | 32 - .../support/resource-manager/readme.md | 25 - .../synapse/resource-manager/readme.md | 35 - .../resource-manager/readme.md | 27 - .../trafficmanager/resource-manager/readme.md | 30 - .../visualstudio/resource-manager/readme.md | 24 - .../vmware/resource-manager/readme.md | 25 - .../resource-manager/readme.md | 24 - specification/web/resource-manager/readme.md | 93 -- .../windowsesu/resource-manager/readme.md | 24 - .../windowsiot/resource-manager/readme.md | 25 - .../resource-manager/readme.md | 24 - 176 files changed, 272 insertions(+), 6121 deletions(-) create mode 100644 specification/baremetalinfrastructure/resource-manager/readme.azureresourceschema.md create mode 100644 specification/powerplatform/resource-manager/readme.azureresourceschema.md diff --git a/specification/EnterpriseKnowledgeGraph/resource-manager/readme.md b/specification/EnterpriseKnowledgeGraph/resource-manager/readme.md index 5e86715c9ebe..f829ac9dfbb7 100644 --- a/specification/EnterpriseKnowledgeGraph/resource-manager/readme.md +++ b/specification/EnterpriseKnowledgeGraph/resource-manager/readme.md @@ -98,27 +98,3 @@ csharp: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.EnterpriseKnowledgeGraph/preview/2018-12-03/EnterpriseKnowledgeGraphSwagger.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/addons/resource-manager/readme.md b/specification/addons/resource-manager/readme.md index 190417253f1c..324507aa8113 100644 --- a/specification/addons/resource-manager/readme.md +++ b/specification/addons/resource-manager/readme.md @@ -197,28 +197,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Addons/preview/2018-03-01/addons-swagger.json - - $(this-folder)/Microsoft.Addons/preview/2017-05-15/Addons.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/adhybridhealthservice/resource-manager/readme.azureresourceschema.md b/specification/adhybridhealthservice/resource-manager/readme.azureresourceschema.md index 2ed4e21a2173..1160a311964b 100644 --- a/specification/adhybridhealthservice/resource-manager/readme.azureresourceschema.md +++ b/specification/adhybridhealthservice/resource-manager/readme.azureresourceschema.md @@ -5,8 +5,20 @@ These settings apply only when `--azureresourceschema` is specified on the comma ### AzureResourceSchema multi-api ``` yaml $(azureresourceschema) && $(multiapi) -batch: [] +batch: + - tag: schema-adhybridhealthservice-2014-01-01 ``` Please also specify `--azureresourceschema-folder=`. + +### Tag: schema-adhybridhealthservice-2014-01-01 and azureresourceschema + +``` yaml $(tag) == 'schema-adhybridhealthservice-2014-01-01' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.ADHybridHealthService\stable\2014-01-01\ADHybridHealthService.json + +``` diff --git a/specification/adhybridhealthservice/resource-manager/readme.md b/specification/adhybridhealthservice/resource-manager/readme.md index 88e9f3b4d518..33c75ef311d4 100644 --- a/specification/adhybridhealthservice/resource-manager/readme.md +++ b/specification/adhybridhealthservice/resource-manager/readme.md @@ -101,27 +101,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ADHybridHealthService\stable\2014-01-01\ADHybridHealthService.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/advisor/resource-manager/readme.md b/specification/advisor/resource-manager/readme.md index c3f9f016496e..a686c40128f2 100644 --- a/specification/advisor/resource-manager/readme.md +++ b/specification/advisor/resource-manager/readme.md @@ -152,30 +152,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Advisor/preview/2020-07-01-preview/advisor.json - - $(this-folder)/Microsoft.Advisor/stable/2020-01-01/advisor.json - - $(this-folder)/Microsoft.Advisor/stable/2017-04-19/advisor.json - - $(this-folder)/Microsoft.Advisor/stable/2017-03-31/advisor.json - - $(this-folder)/Microsoft.Advisor/preview/2016-07-12-preview/advisor.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/alertsmanagement/resource-manager/readme.azureresourceschema.md b/specification/alertsmanagement/resource-manager/readme.azureresourceschema.md index 87dbe102b007..7e310183b24c 100644 --- a/specification/alertsmanagement/resource-manager/readme.azureresourceschema.md +++ b/specification/alertsmanagement/resource-manager/readme.azureresourceschema.md @@ -6,6 +6,7 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-alertsmanagement-2020-08-04-preview - tag: schema-alertsmanagement-2019-06-01 - tag: schema-alertsmanagement-2019-05-05-preview - tag: schema-alertsmanagement-2019-03-01 @@ -16,6 +17,17 @@ batch: Please also specify `--azureresourceschema-folder=`. +### Tag: schema-alertsmanagement-2020-08-04-preview and azureresourceschema + +``` yaml $(tag) == 'schema-alertsmanagement-2020-08-04-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.AlertsManagement/preview/2020-08-04-preview/AlertsManagement.json + +``` + ### Tag: schema-alertsmanagement-2019-06-01 and azureresourceschema ``` yaml $(tag) == 'schema-alertsmanagement-2019-06-01' && $(azureresourceschema) diff --git a/specification/alertsmanagement/resource-manager/readme.md b/specification/alertsmanagement/resource-manager/readme.md index 211952f9f39f..4c1754e7b365 100644 --- a/specification/alertsmanagement/resource-manager/readme.md +++ b/specification/alertsmanagement/resource-manager/readme.md @@ -190,35 +190,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AlertsManagement/preview/2019-05-05-preview/ActionRules.json - - $(this-folder)/Microsoft.AlertsManagement/preview/2019-05-05-preview/AlertsManagement.json - - $(this-folder)/Microsoft.AlertsManagement/preview/2019-05-05-preview/SmartGroups.json - - $(this-folder)/Microsoft.AlertsManagement/stable/2019-06-01/SmartDetectorAlertRulesApi.json - - $(this-folder)/Microsoft.AlertsManagement/stable/2019-03-01/AlertsManagement.json - - $(this-folder)/Microsoft.AlertsManagement/stable/2019-03-01/SmartDetectorAlertRulesApi.json - - $(this-folder)/Microsoft.AlertsManagement/stable/2018-05-05/AlertsManagement.json - - $(this-folder)/Microsoft.AlertsManagement/preview/2018-05-05-preview/AlertsManagement.json - - $(this-folder)/Microsoft.AlertsManagement/preview/2020-08-04-preview/AlertsManagement.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/analysisservices/resource-manager/readme.md b/specification/analysisservices/resource-manager/readme.md index c65ff0f0a6f8..1e60c46b1f69 100644 --- a/specification/analysisservices/resource-manager/readme.md +++ b/specification/analysisservices/resource-manager/readme.md @@ -190,30 +190,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AnalysisServices/stable/2017-08-01/analysisservices.json - - $(this-folder)/Microsoft.AnalysisServices/preview/2017-08-01-beta/analysisservices.json - - $(this-folder)/Microsoft.AnalysisServices/stable/2017-07-14/analysisservices.json - - $(this-folder)/Microsoft.AnalysisServices/stable/2016-05-16/analysisservices.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/apimanagement/resource-manager/readme.md b/specification/apimanagement/resource-manager/readme.md index 96ff6b9c8221..623baea81b75 100644 --- a/specification/apimanagement/resource-manager/readme.md +++ b/specification/apimanagement/resource-manager/readme.md @@ -380,230 +380,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimapis.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimcontenttypes.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimissues.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimregions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimreports.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/definitions.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapis.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapisByTags.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapiversionsets.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimauthorizationservers.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimbackends.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimcaches.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimcertificates.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdiagnostics.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimemailtemplates.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgroups.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimidentityprovider.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimissues.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimloggers.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnetworkstatus.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnotifications.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimopenidconnectproviders.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicies.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicydescriptions.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimportalsettings.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimproducts.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimproductsByTags.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnamedvalues.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimquotas.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimregions.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimreports.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimsubscriptions.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtagresources.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtags.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtenant.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimusers.json - - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimanagement.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimapis.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimapisByTags.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimapiversionsets.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimauthorizationservers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimbackends.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimcaches.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimcertificates.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimdeployment.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimdiagnostics.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimemailtemplates.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimgroups.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimidentityprovider.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimissues.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimloggers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimnetworkstatus.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimnotifications.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimopenidconnectproviders.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimpolicies.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimpolicysnippets.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimportalsettings.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimproducts.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimproductsByTags.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimproperties.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimquotas.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimregions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimreports.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimsubscriptions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimtagresources.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimtags.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimtenant.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/apimusers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-01-01/definitions.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimanagement.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapisByTags.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimauthorizationservers.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimbackends.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimcaches.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimcertificates.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimdeployment.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimdiagnostics.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimemailtemplates.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimgroups.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimidentityprovider.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimissues.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimloggers.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimnotifications.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimnetworkstatus.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimopenidconnectproviders.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimpolicies.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimpolicysnippets.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimportalsettings.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimproducts.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimproductsByTags.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimproperties.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimquotas.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimregions.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimreports.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimsubscriptions.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimtagresources.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimtags.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimtenant.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimusers.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapiversionsets.json - - $(this-folder)/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimanagement.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimapis.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimauthorizationservers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimbackends.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimcertificates.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimdeployment.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimdiagnostics.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimemailtemplate.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimgroups.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimidentityprovider.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimloggers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimnotifications.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimnetworkstatus.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimopenidconnectproviders.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimportalsettings.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimproducts.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimproperties.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimquotas.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimreports.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimsubscriptions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimtagresources.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimtags.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimtenant.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimusers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2018-01-01/apimversionsets.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimanagement.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimapis.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimauthorizationservers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimbackends.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimcertificates.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimdeployment.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimdiagnostics.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimemailtemplate.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimgroups.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimidentityprovider.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimloggers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimnotifications.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimnetworkstatus.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimopenidconnectproviders.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimportalsettings.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimproducts.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimproperties.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimquotas.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimreports.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimsubscriptions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimtagresources.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimtags.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimtenant.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimusers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2017-03-01/apimversionsets.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimanagement.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimapis.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimauthorizationservers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimbackends.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimcertificates.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimdeployment.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimgroups.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimidentityprovider.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimloggers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimnetworkstatus.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimopenidconnectproviders.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimproducts.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimproperties.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimquotas.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimreports.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimsubscriptions.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimtenant.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-10-10/apimusers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-07-07/apimanagement.json - - $(this-folder)/Microsoft.ApiManagement/stable/2016-07-07/apimdeployment.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/appconfiguration/resource-manager/readme.md b/specification/appconfiguration/resource-manager/readme.md index 8b0a55eef85c..8f59f70c2a43 100644 --- a/specification/appconfiguration/resource-manager/readme.md +++ b/specification/appconfiguration/resource-manager/readme.md @@ -136,30 +136,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AppConfiguration/stable/2020-06-01/appconfiguration.json - - $(this-folder)/Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json - - $(this-folder)/Microsoft.AppConfiguration/preview/2019-02-01-preview/appconfiguration.json - - $(this-folder)/Microsoft.AppConfiguration/stable/2019-10-01/appconfiguration.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/applicationinsights/resource-manager/readme.md b/specification/applicationinsights/resource-manager/readme.md index 1a530b904a3c..5c0ad5cb963a 100644 --- a/specification/applicationinsights/resource-manager/readme.md +++ b/specification/applicationinsights/resource-manager/readme.md @@ -352,51 +352,3 @@ input-file: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Insights/preview/2020-06-02-preview/livetoken_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/favorites_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/webTestLocations_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/webTests_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/analyticsItems_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/workbooks_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/myworkbooks_API.json - - $(this-folder)/Microsoft.Insights/preview/2018-05-01-preview/components_API.json - - $(this-folder)/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json - - $(this-folder)/Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/components_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-10-01/eaSubscriptionMigration_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-10-01/componentFeaturesAndPricing_API.json - - $(this-folder)/Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json - - $(this-folder)/Microsoft.Insights/preview/2019-10-17-preview/workbookTemplates_API.json - - $(this-folder)/Microsoft.Insights/preview/2018-05-01-preview/componentProactiveDetection_API.json - - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json - - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json - - $(this-folder)/Microsoft.Insights/preview/2020-02-02-preview/components_API.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/appplatform/resource-manager/readme.md b/specification/appplatform/resource-manager/readme.md index 4a9a5a3d95e3..37a91547fa09 100644 --- a/specification/appplatform/resource-manager/readme.md +++ b/specification/appplatform/resource-manager/readme.md @@ -121,27 +121,3 @@ csharp: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AppPlatform/stable/2020-07-01/appplatform.json - - $(this-folder)/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/attestation/resource-manager/readme.md b/specification/attestation/resource-manager/readme.md index e2509e0c3c46..68adc3fb05b6 100644 --- a/specification/attestation/resource-manager/readme.md +++ b/specification/attestation/resource-manager/readme.md @@ -87,27 +87,3 @@ See configuration in [readme.trenton.md](./readme.trenton.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/authorization/resource-manager/readme.md b/specification/authorization/resource-manager/readme.md index dc05c9392f9c..056f804e8de3 100644 --- a/specification/authorization/resource-manager/readme.md +++ b/specification/authorization/resource-manager/readme.md @@ -244,38 +244,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Authorization/preview/2020-04-01-preview/authorization-RoleAssignmentsCalls.json - - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-RoleDefinitionsCalls.json - - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-ProviderOperationsCalls.json - - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json - - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-RoleAssignmentsCalls.json - - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-ClassicAdminCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2015-06-01/authorization-ClassicAdminCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2017-10-01-preview/authorization-RoleAssignmentsCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleAssignmentsCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2018-07-01-preview/authorization-DenyAssignmentGetCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2018-09-01-preview/authorization-RoleAssignmentsCalls.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/automanage/resource-manager/readme.md b/specification/automanage/resource-manager/readme.md index c6f1780bd6da..a99434672cf5 100644 --- a/specification/automanage/resource-manager/readme.md +++ b/specification/automanage/resource-manager/readme.md @@ -84,26 +84,3 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Automanage/preview/2020-06-30-preview/automanage.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/automation/resource-manager/readme.md b/specification/automation/resource-manager/readme.md index 1232c3a3c9d8..673bab83d496 100644 --- a/specification/automation/resource-manager/readme.md +++ b/specification/automation/resource-manager/readme.md @@ -306,60 +306,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/account.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/certificate.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/connection.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/connectionType.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/credential.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/dscCompilationJob.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/dscConfiguration.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/dscNode.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/dscNodeConfiguration.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/hybridRunbookWorkerGroup.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/job.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/jobSchedule.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/linkedWorkspace.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/module.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/runbook.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/schedule.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/variable.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/webhook.json - - $(this-folder)/Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfiguration.json - - $(this-folder)/Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationRun.json - - $(this-folder)/Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationMachineRun.json - - $(this-folder)/Microsoft.Automation/preview/2017-05-15-preview/sourceControl.json - - $(this-folder)/Microsoft.Automation/preview/2017-05-15-preview/sourceControlSyncJob.json - - $(this-folder)/Microsoft.Automation/preview/2017-05-15-preview/sourceControlSyncJobStreams.json - - $(this-folder)/Microsoft.Automation/preview/2017-05-15-preview/job.json - - $(this-folder)/Microsoft.Automation/stable/2015-10-31/watcher.json - - $(this-folder)/Microsoft.Automation/stable/2018-01-15/dscNode.json - - $(this-folder)/Microsoft.Automation/stable/2018-01-15/dscCompilationJob.json - - $(this-folder)/Microsoft.Automation/stable/2018-01-15/dscNodeConfiguration.json - - $(this-folder)/Microsoft.Automation/stable/2018-01-15/dscNodeCounts.json - - $(this-folder)/Microsoft.Automation/stable/2018-06-30/runbook.json - - $(this-folder)/Microsoft.Automation/stable/2018-06-30/python2package.json - - $(this-folder)/Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json - - $(this-folder)/Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/azure-kusto/resource-manager/readme.md b/specification/azure-kusto/resource-manager/readme.md index f33e161ac118..043249c10db0 100644 --- a/specification/azure-kusto/resource-manager/readme.md +++ b/specification/azure-kusto/resource-manager/readme.md @@ -200,37 +200,6 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Kusto/stable/2020-06-14/kusto.json - - $(this-folder)/Microsoft.Kusto/stable/2020-02-15/kusto.json - - $(this-folder)/Microsoft.Kusto/stable/2019-11-09/kusto.json - - $(this-folder)/Microsoft.Kusto/stable/2019-09-07/kusto.json - - $(this-folder)/Microsoft.Kusto/stable/2019-05-15/kusto.json - - $(this-folder)/Microsoft.Kusto/stable/2019-01-21/kusto.json - - $(this-folder)/Microsoft.Kusto/preview/2018-09-07-preview/kusto.json - - $(this-folder)/Microsoft.Kusto/preview/2017-09-07-privatepreview/kusto.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - ## Suppression ``` yaml diff --git a/specification/azureactivedirectory/resource-manager/readme.md b/specification/azureactivedirectory/resource-manager/readme.md index 76d6a582264c..b84ecea4a6f7 100644 --- a/specification/azureactivedirectory/resource-manager/readme.md +++ b/specification/azureactivedirectory/resource-manager/readme.md @@ -124,29 +124,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Aadiam/preview/2020-07-01-preview/azureADMetrics.json - - $(this-folder)/Microsoft.Aadiam/preview/2020-03-01-preview/privateLinkForAzureAD.json - - $(this-folder)/Microsoft.Aadiam/preview/2020-03-01-preview/privateLinkResources.json - - $(this-folder)/Microsoft.Aadiam/stable/2017-04-01/azureactivedirectory.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/azuredata/resource-manager/readme.azureresourceschema.md b/specification/azuredata/resource-manager/readme.azureresourceschema.md index 9e9e3a071f7d..25ab4f9115e8 100644 --- a/specification/azuredata/resource-manager/readme.azureresourceschema.md +++ b/specification/azuredata/resource-manager/readme.azureresourceschema.md @@ -6,12 +6,24 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-azuredata-2020-09-08-preview - tag: schema-azuredata-2019-07-24-preview ``` Please also specify `--azureresourceschema-folder=`. +### Tag: schema-azuredata-2020-09-08-preview and azureresourceschema + +``` yaml $(tag) == 'schema-azuredata-2020-09-08-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.AzureData/preview/2020-09-08-preview/azuredata.json + +``` + ### Tag: schema-azuredata-2019-07-24-preview and azureresourceschema ``` yaml $(tag) == 'schema-azuredata-2019-07-24-preview' && $(azureresourceschema) diff --git a/specification/azuredata/resource-manager/readme.md b/specification/azuredata/resource-manager/readme.md index be936d04b9ea..c862cca522de 100644 --- a/specification/azuredata/resource-manager/readme.md +++ b/specification/azuredata/resource-manager/readme.md @@ -103,26 +103,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` \ No newline at end of file diff --git a/specification/azurestack/resource-manager/readme.md b/specification/azurestack/resource-manager/readme.md index dc231df47dea..34aec4212656 100644 --- a/specification/azurestack/resource-manager/readme.md +++ b/specification/azurestack/resource-manager/readme.md @@ -143,30 +143,3 @@ See configuration in [readme.python.md](./readme.python.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AzureStack/stable/2017-06-01/AzureStack.json - - $(this-folder)/Microsoft.AzureStack/stable/2017-06-01/Product.json - - $(this-folder)/Microsoft.AzureStack/stable/2017-06-01/Registration.json - - $(this-folder)/Microsoft.AzureStack/stable/2017-06-01/CustomerSubscription.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/azurestackhci/resource-manager/readme.md b/specification/azurestackhci/resource-manager/readme.md index ee213486dda1..fcd244ab9316 100644 --- a/specification/azurestackhci/resource-manager/readme.md +++ b/specification/azurestackhci/resource-manager/readme.md @@ -96,27 +96,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AzureStackHCI/preview/2020-03-01-preview/azurestackhci.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/baremetalinfrastructure/resource-manager/readme.azureresourceschema.md b/specification/baremetalinfrastructure/resource-manager/readme.azureresourceschema.md new file mode 100644 index 000000000000..0228f0a806a3 --- /dev/null +++ b/specification/baremetalinfrastructure/resource-manager/readme.azureresourceschema.md @@ -0,0 +1,24 @@ +## AzureResourceSchema + +These settings apply only when `--azureresourceschema` is specified on the command line. + +### AzureResourceSchema multi-api + +``` yaml $(azureresourceschema) && $(multiapi) +batch: + - tag: schema-baremetalinfrastructure-2020-08-06-preview + +``` + +Please also specify `--azureresourceschema-folder=`. + +### Tag: schema-baremetalinfrastructure-2020-08-06-preview and azureresourceschema + +``` yaml $(tag) == 'schema-baremetalinfrastructure-2020-08-06-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.BareMetalInfrastructure/preview/2020-08-06-preview/baremetalinfrastructure.json + +``` diff --git a/specification/batch/resource-manager/readme.md b/specification/batch/resource-manager/readme.md index 4f12e196aab3..8c9580afe937 100644 --- a/specification/batch/resource-manager/readme.md +++ b/specification/batch/resource-manager/readme.md @@ -281,35 +281,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Batch/stable/2020-09-01/BatchManagement.json - - $(this-folder)/Microsoft.Batch/stable/2020-05-01/BatchManagement.json - - $(this-folder)/Microsoft.Batch/stable/2020-03-01/BatchManagement.json - - $(this-folder)/Microsoft.Batch/stable/2019-08-01/BatchManagement.json - - $(this-folder)/Microsoft.Batch/stable/2019-04-01/BatchManagement.json - - $(this-folder)/Microsoft.Batch/stable/2018-12-01/BatchManagement.json - - $(this-folder)/Microsoft.Batch/stable/2017-09-01/BatchManagement.json - - $(this-folder)/Microsoft.Batch/stable/2017-05-01/BatchManagement.json - - $(this-folder)/Microsoft.Batch/stable/2017-01-01/BatchManagement.json - - $(this-folder)/Microsoft.Batch/stable/2015-12-01/BatchManagement.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/batchai/resource-manager/readme.md b/specification/batchai/resource-manager/readme.md index a33a47f14d3b..6c29bae8f5b6 100644 --- a/specification/batchai/resource-manager/readme.md +++ b/specification/batchai/resource-manager/readme.md @@ -190,29 +190,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.BatchAI/preview/2017-09-01-preview/BatchAI.json - - $(this-folder)/Microsoft.BatchAI/stable/2018-03-01/BatchAI.json - - $(this-folder)/Microsoft.BatchAI/stable/2018-05-01/BatchAI.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/billing/resource-manager/readme.md b/specification/billing/resource-manager/readme.md index a28cc4e5784c..133322e3dbd8 100644 --- a/specification/billing/resource-manager/readme.md +++ b/specification/billing/resource-manager/readme.md @@ -238,33 +238,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Billing/stable/2020-05-01/billing.json - - $(this-folder)/Microsoft.Billing/preview/2018-03-01-preview/billingV2.json - - $(this-folder)/Microsoft.Billing/preview/2019-10-01-preview/billing.json - - $(this-folder)/Microsoft.Billing/preview/2018-11-01-preview/billing.json - - $(this-folder)/Microsoft.Billing/preview/2018-03-01-preview/billing.json - - $(this-folder)/Microsoft.Billing/preview/2017-04-24-preview/billing.json - - $(this-folder)/Microsoft.Billing/preview/2017-02-27-preview/billing.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/blockchain/resource-manager/readme.md b/specification/blockchain/resource-manager/readme.md index cab2a3ebe290..ebea104cb0f2 100644 --- a/specification/blockchain/resource-manager/readme.md +++ b/specification/blockchain/resource-manager/readme.md @@ -93,27 +93,3 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Blockchain/preview/2018-06-01-preview/blockchain.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/blueprint/resource-manager/readme.md b/specification/blueprint/resource-manager/readme.md index d39803123cf1..e133f1b7ed9f 100644 --- a/specification/blueprint/resource-manager/readme.md +++ b/specification/blueprint/resource-manager/readme.md @@ -138,31 +138,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Blueprint/preview/2017-11-11-preview/blueprintDefinition.json - - $(this-folder)/Microsoft.Blueprint/preview/2017-11-11-preview/blueprintAssignment.json - - $(this-folder)/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json - - $(this-folder)/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintAssignment.json - - $(this-folder)/Microsoft.Blueprint/preview/2018-11-01-preview/assignmentOperation.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/botservice/resource-manager/readme.md b/specification/botservice/resource-manager/readme.md index ed269859fd07..b94651179da3 100644 --- a/specification/botservice/resource-manager/readme.md +++ b/specification/botservice/resource-manager/readme.md @@ -131,28 +131,3 @@ See readme.python.md file. See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.BotService/stable/2020-06-02/botservice.json - - $(this-folder)/Microsoft.BotService/preview/2018-07-12/botservice.json - - $(this-folder)/Microsoft.BotService/preview/2017-12-01/botservice.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/cdn/resource-manager/readme.md b/specification/cdn/resource-manager/readme.md index a721599aedd4..d7f99a1c0370 100644 --- a/specification/cdn/resource-manager/readme.md +++ b/specification/cdn/resource-manager/readme.md @@ -182,39 +182,3 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Cdn/stable/2020-04-15/cdn.json - - $(this-folder)/Microsoft.Cdn/stable/2020-04-15/cdnwebapplicationfirewall.json - - $(this-folder)/Microsoft.Cdn/stable/2019-12-31/cdn.json - - $(this-folder)/Microsoft.Cdn/stable/2019-06-15/cdn.json - - $(this-folder)/Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json - - $(this-folder)/Microsoft.Cdn/preview/2019-06-15-preview/cdn.json - - $(this-folder)/Microsoft.Cdn/preview/2019-06-15-preview/cdnwebapplicationfirewall.json - - $(this-folder)/Microsoft.Cdn/stable/2019-04-15/cdn.json - - $(this-folder)/Microsoft.Cdn/stable/2017-10-12/cdn.json - - $(this-folder)/Microsoft.Cdn/stable/2017-04-02/cdn.json - - $(this-folder)/Microsoft.Cdn/stable/2016-10-02/cdn.json - - $(this-folder)/Microsoft.Cdn/stable/2016-04-02/cdn.json - - $(this-folder)/Microsoft.Cdn/stable/2015-06-01/cdn.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/changeanalysis/resource-manager/readme.md b/specification/changeanalysis/resource-manager/readme.md index 218a3d561e26..d8cc3055ec39 100644 --- a/specification/changeanalysis/resource-manager/readme.md +++ b/specification/changeanalysis/resource-manager/readme.md @@ -121,27 +121,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ChangeAnalysis/preview/2020-04-01-preview/changeanalysis.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/cloudshell/resource-manager/readme.md b/specification/cloudshell/resource-manager/readme.md index 6fb7acdaf933..d1f360640baa 100644 --- a/specification/cloudshell/resource-manager/readme.md +++ b/specification/cloudshell/resource-manager/readme.md @@ -153,27 +153,3 @@ csharp: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Portal/stable/2018-10-01/CloudShell.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/cognitiveservices/resource-manager/readme.md b/specification/cognitiveservices/resource-manager/readme.md index 49f7177b6ab1..6a6be724ecc5 100644 --- a/specification/cognitiveservices/resource-manager/readme.md +++ b/specification/cognitiveservices/resource-manager/readme.md @@ -148,28 +148,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json - - $(this-folder)/Microsoft.CognitiveServices/preview/2016-02-01-preview/cognitiveservices.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/commerce/resource-manager/readme.md b/specification/commerce/resource-manager/readme.md index 4f7967777da7..c8a7045b2f89 100644 --- a/specification/commerce/resource-manager/readme.md +++ b/specification/commerce/resource-manager/readme.md @@ -150,27 +150,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Commerce/preview/2015-06-01-preview/commerce.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/compute/resource-manager/readme.azureresourceschema.md b/specification/compute/resource-manager/readme.azureresourceschema.md index fe54530ede0c..81b6c3e59c77 100644 --- a/specification/compute/resource-manager/readme.azureresourceschema.md +++ b/specification/compute/resource-manager/readme.azureresourceschema.md @@ -10,6 +10,7 @@ batch: - tag: schema-containerservice-2016-09-30 - tag: schema-containerservice-2016-03-30 - tag: schema-containerservice-2015-11-01-preview + - tag: schema-compute-2020-09-30 - tag: schema-compute-2020-06-30 - tag: schema-compute-2020-06-01 - tag: schema-compute-2020-05-01 @@ -77,6 +78,18 @@ input-file: ``` +### Tag: schema-compute-2020-09-30 and azureresourceschema + +``` yaml $(tag) == 'schema-compute-2020-09-30' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.Compute/preview/2020-09-30/gallery.json + - Microsoft.Compute/preview/2020-09-30/sharedGallery.json + +``` + ### Tag: schema-compute-2020-06-30 and azureresourceschema ``` yaml $(tag) == 'schema-compute-2020-06-30' && $(azureresourceschema) diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index f3bf70b2dee3..052addaaae0f 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -873,69 +873,3 @@ input-file: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Compute/preview/2020-09-30/sharedGallery.json - - $(this-folder)/Microsoft.Compute/preview/2020-09-30/gallery.json - - $(this-folder)/Microsoft.Compute/stable/2020-06-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2020-06-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2019-04-01/skus.json - - $(this-folder)/Microsoft.Compute/stable/2020-06-30/disk.json - - $(this-folder)/Microsoft.Compute/stable/2019-12-01/gallery.json - - $(this-folder)/Microsoft.ContainerService/stable/2017-01-31/containerService.json - - $(this-folder)/Microsoft.Compute/stable/2020-05-01/disk.json - - $(this-folder)/Microsoft.Compute/stable/2019-12-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2019-12-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2019-11-01/disk.json - - $(this-folder)/Microsoft.Compute/stable/2019-07-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2019-07-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2019-07-01/gallery.json - - $(this-folder)/Microsoft.Compute/stable/2019-07-01/disk.json - - $(this-folder)/Microsoft.Compute/stable/2019-03-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2019-03-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2019-03-01/disk.json - - $(this-folder)/Microsoft.Compute/stable/2019-03-01/gallery.json - - $(this-folder)/Microsoft.Compute/stable/2018-10-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2018-10-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2017-09-01/skus.json - - $(this-folder)/Microsoft.Compute/stable/2018-09-30/disk.json - - $(this-folder)/Microsoft.Compute/stable/2018-06-01/gallery.json - - $(this-folder)/Microsoft.Compute/stable/2018-06-01/disk.json - - $(this-folder)/Microsoft.Compute/stable/2018-06-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2018-06-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2018-04-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2018-04-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2018-04-01/disk.json - - $(this-folder)/Microsoft.Compute/stable/2017-12-01/compute.json - - $(this-folder)/Microsoft.Compute/stable/2017-12-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2017-03-30/disk.json - - $(this-folder)/Microsoft.Compute/stable/2017-03-30/compute.json - - $(this-folder)/Microsoft.Compute/stable/2017-03-30/runCommands.json - - $(this-folder)/Microsoft.ContainerService/stable/2016-09-30/containerService.json - - $(this-folder)/Microsoft.Compute/preview/2016-04-30-preview/compute.json - - $(this-folder)/Microsoft.Compute/preview/2016-04-30-preview/disk.json - - $(this-folder)/Microsoft.Compute/stable/2016-03-30/compute.json - - $(this-folder)/Microsoft.ContainerService/stable/2016-03-30/containerService.json - - $(this-folder)/Microsoft.ContainerService/preview/2015-11-01-preview/containerService.json - - $(this-folder)/Microsoft.Compute/stable/2015-06-15/compute.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/consumption/resource-manager/readme.md b/specification/consumption/resource-manager/readme.md index b909544080e9..575e341b41c9 100644 --- a/specification/consumption/resource-manager/readme.md +++ b/specification/consumption/resource-manager/readme.md @@ -411,41 +411,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Consumption/stable/2019-10-01/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2019-06-01/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2019-05-01/consumption.json - - $(this-folder)/Microsoft.Consumption/preview/2019-05-01-preview/consumption.json - - $(this-folder)/Microsoft.Consumption/preview/2019-04-01-preview/consumption.json - - $(this-folder)/Microsoft.Consumption/preview/2018-11-01-preview/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2019-01-01/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2017-11-30/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2018-01-31/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2018-03-31/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2018-05-31/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2018-06-30/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2018-08-31/consumption.json - - $(this-folder)/Microsoft.Consumption/stable/2018-10-01/consumption.json - - $(this-folder)/Microsoft.Consumption/preview/2017-04-24-preview/consumption.json - - $(this-folder)/Microsoft.Consumption/preview/2017-12-30-preview/consumption.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/containerinstance/resource-manager/readme.md b/specification/containerinstance/resource-manager/readme.md index 6eca258b4fb5..f2c0f633cb1a 100644 --- a/specification/containerinstance/resource-manager/readme.md +++ b/specification/containerinstance/resource-manager/readme.md @@ -178,34 +178,3 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ContainerInstance/stable/2019-12-01/containerInstance.json - - $(this-folder)/Microsoft.ContainerInstance/stable/2018-10-01/containerInstance.json - - $(this-folder)/Microsoft.ContainerInstance/stable/2018-09-01/containerInstance.json - - $(this-folder)/Microsoft.ContainerInstance/stable/2018-06-01/containerInstance.json - - $(this-folder)/Microsoft.ContainerInstance/stable/2018-04-01/containerInstance.json - - $(this-folder)/Microsoft.ContainerInstance/preview/2018-02-01-preview/containerInstance.json - - $(this-folder)/Microsoft.ContainerInstance/preview/2017-12-01-preview/containerInstance.json - - $(this-folder)/Microsoft.ContainerInstance/preview/2017-10-01-preview/containerInstance.json - - $(this-folder)/Microsoft.ContainerInstance/preview/2017-08-01-preview/containerInstance.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/containerregistry/resource-manager/readme.md b/specification/containerregistry/resource-manager/readme.md index ac6dd32aba11..7b1c94e51a3c 100644 --- a/specification/containerregistry/resource-manager/readme.md +++ b/specification/containerregistry/resource-manager/readme.md @@ -216,36 +216,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json - - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json - - $(this-folder)/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json - - $(this-folder)/Microsoft.ContainerRegistry/stable/2019-05-01/containerregistry.json - - $(this-folder)/Microsoft.ContainerRegistry/stable/2019-04-01/containerregistry_build.json - - $(this-folder)/Microsoft.ContainerRegistry/stable/2017-10-01/containerregistry.json - - $(this-folder)/Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json - - $(this-folder)/Microsoft.ContainerRegistry/preview/2018-02-01-preview/containerregistry_build.json - - $(this-folder)/Microsoft.ContainerRegistry/preview/2017-06-01-preview/containerregistry.json - - $(this-folder)/Microsoft.ContainerRegistry/stable/2017-03-01/containerregistry.json - - $(this-folder)/Microsoft.ContainerRegistry/preview/2016-06-27-preview/containerregistry.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/containerservice/resource-manager/readme.azureresourceschema.md b/specification/containerservice/resource-manager/readme.azureresourceschema.md index 90ab94bce32e..757d9d5dd16f 100644 --- a/specification/containerservice/resource-manager/readme.azureresourceschema.md +++ b/specification/containerservice/resource-manager/readme.azureresourceschema.md @@ -6,6 +6,7 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-containerservice-2020-09-01 - tag: schema-containerservice-2020-07-01 - tag: schema-containerservice-2020-06-01 - tag: schema-containerservice-2020-04-01 @@ -35,6 +36,17 @@ batch: Please also specify `--azureresourceschema-folder=`. +### Tag: schema-containerservice-2020-09-01 and azureresourceschema + +``` yaml $(tag) == 'schema-containerservice-2020-09-01' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.ContainerService/stable/2020-09-01/managedClusters.json + +``` + ### Tag: schema-containerservice-2020-07-01 and azureresourceschema ``` yaml $(tag) == 'schema-containerservice-2020-07-01' && $(azureresourceschema) diff --git a/specification/containerservice/resource-manager/readme.md b/specification/containerservice/resource-manager/readme.md index 0422a527f0db..b24570f6bfd1 100644 --- a/specification/containerservice/resource-manager/readme.md +++ b/specification/containerservice/resource-manager/readme.md @@ -602,52 +602,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2017-07-01/containerService.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-08-01/location.json - - $(this-folder)/Microsoft.ContainerService/stable/2020-07-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2020-06-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2020-04-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2020-03-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2020-02-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2020-01-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-11-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/preview/2019-10-27-preview/openShiftManagedClusters.json - - $(this-folder)/Microsoft.ContainerService/preview/2019-09-30/openShiftManagedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-08-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-10-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-06-01/location.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-06-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-04-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-04-01/location.json - - $(this-folder)/Microsoft.ContainerService/preview/2018-09-30-preview/openShiftManagedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2019-02-01/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2017-09-30/location.json - - $(this-folder)/Microsoft.ContainerService/preview/2018-08-01-preview/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2018-03-31/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2017-08-31/managedClusters.json - - $(this-folder)/Microsoft.ContainerService/stable/2017-01-31/containerService.json - - $(this-folder)/Microsoft.ContainerService/stable/2016-09-30/containerService.json - - $(this-folder)/Microsoft.ContainerService/stable/2016-03-30/containerService.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/cosmos-db/resource-manager/readme.md b/specification/cosmos-db/resource-manager/readme.md index 0ca282c6da93..7adb905df487 100644 --- a/specification/cosmos-db/resource-manager/readme.md +++ b/specification/cosmos-db/resource-manager/readme.md @@ -273,43 +273,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DocumentDB/preview/2020-06-01-preview/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/preview/2020-06-01-preview/notebook.json - - $(this-folder)/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json - - $(this-folder)/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json - - $(this-folder)/Microsoft.DocumentDB/stable/2020-04-01/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/stable/2020-04-01/notebook.json - - $(this-folder)/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/stable/2020-03-01/notebook.json - - $(this-folder)/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/stable/2019-12-12/notebook.json - - $(this-folder)/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/stable/2019-08-01/notebook.json - - $(this-folder)/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/cost-management/resource-manager/readme.azureresourceschema.md b/specification/cost-management/resource-manager/readme.azureresourceschema.md index 87d877890c0c..c684505db1d6 100644 --- a/specification/cost-management/resource-manager/readme.azureresourceschema.md +++ b/specification/cost-management/resource-manager/readme.azureresourceschema.md @@ -52,6 +52,7 @@ output-folder: $(azureresourceschema-folder)/schemas # all the input files in this apiVersion input-file: - Microsoft.CostManagement/stable/2019-11-01/costmanagement.json + - Microsoft.CostManagement/stable/2019-11-01/costmanagement.exports.json ``` diff --git a/specification/cost-management/resource-manager/readme.md b/specification/cost-management/resource-manager/readme.md index 505a99a338c0..b8127660918f 100644 --- a/specification/cost-management/resource-manager/readme.md +++ b/specification/cost-management/resource-manager/readme.md @@ -344,36 +344,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.CostManagement/stable/2020-06-01/costmanagement.json - - $(this-folder)/Microsoft.CostManagement/preview/2020-03-01-preview/costallocation.json - - $(this-folder)/Microsoft.CostManagement/stable/2019-11-01/costmanagement.json - - $(this-folder)/Microsoft.CostManagement/stable/2019-10-01/costmanagement.json - - $(this-folder)/Microsoft.CostManagement/stable/2019-09-01/costmanagement.json - - $(this-folder)/Microsoft.CostManagement/preview/2019-04-01-preview/costmanagement.json - - $(this-folder)/Microsoft.CostManagement/stable/2019-01-01/costmanagement.json - - $(this-folder)/Microsoft.CostManagement/preview/2019-03-01-preview/costmanagement.json - - $(this-folder)/Microsoft.CostManagement/stable/2018-05-31/costmanagement.json - - $(this-folder)/Microsoft.CostManagement/preview/2018-08-01-preview/costmanagement.json - - $(this-folder)/Microsoft.CostManagement/preview/2018-12-01-preview/costmanagement.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/cpim/resource-manager/readme.md b/specification/cpim/resource-manager/readme.md index 4396ccf1b2c9..acc5245c5750 100644 --- a/specification/cpim/resource-manager/readme.md +++ b/specification/cpim/resource-manager/readme.md @@ -85,27 +85,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AzureActiveDirectory/preview/2020-05-01-preview/cpim.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/customer-insights/resource-manager/readme.md b/specification/customer-insights/resource-manager/readme.md index f22cbd59665a..c75b5444e49c 100644 --- a/specification/customer-insights/resource-manager/readme.md +++ b/specification/customer-insights/resource-manager/readme.md @@ -147,28 +147,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.CustomerInsights/stable/2017-04-26/customer-insights.json - - $(this-folder)/Microsoft.CustomerInsights/stable/2017-01-01/customer-insights.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/customerlockbox/resource-manager/readme.md b/specification/customerlockbox/resource-manager/readme.md index f41a46ae1ca1..0b8ea5704f95 100644 --- a/specification/customerlockbox/resource-manager/readme.md +++ b/specification/customerlockbox/resource-manager/readme.md @@ -85,27 +85,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.CustomerLockbox/preview/2018-02-28-preview/customerlockbox.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/customproviders/resource-manager/readme.md b/specification/customproviders/resource-manager/readme.md index 3a50bc05cf6e..0574110e0f4b 100644 --- a/specification/customproviders/resource-manager/readme.md +++ b/specification/customproviders/resource-manager/readme.md @@ -97,30 +97,6 @@ See configuration in [readme.trenton.md](./readme.trenton.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - ## cli These settings apply only when `--cli` is specified on the command line. diff --git a/specification/databox/resource-manager/readme.md b/specification/databox/resource-manager/readme.md index 043ce94162c9..019369a3cc14 100644 --- a/specification/databox/resource-manager/readme.md +++ b/specification/databox/resource-manager/readme.md @@ -177,29 +177,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DataBox/stable/2020-04-01/databox.json - - $(this-folder)/Microsoft.DataBox/stable/2019-09-01/databox.json - - $(this-folder)/Microsoft.DataBox/stable/2018-01-01/databox.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/databoxedge/resource-manager/readme.md b/specification/databoxedge/resource-manager/readme.md index effc04cc665c..94ad3a2423d2 100644 --- a/specification/databoxedge/resource-manager/readme.md +++ b/specification/databoxedge/resource-manager/readme.md @@ -199,29 +199,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DataBoxEdge/preview/2020-05-01-preview/databoxedge.json - - $(this-folder)/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json - - $(this-folder)/Microsoft.DataBoxEdge/stable/2019-07-01/databoxedge.json - - $(this-folder)/Microsoft.DataBoxEdge/stable/2019-03-01/databoxedge.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/databricks/resource-manager/readme.md b/specification/databricks/resource-manager/readme.md index 5dd1d2e62ce0..bcbfa7452f8f 100644 --- a/specification/databricks/resource-manager/readme.md +++ b/specification/databricks/resource-manager/readme.md @@ -90,27 +90,3 @@ See configuration in [readme.python.md](./readme.python.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Databricks/stable/2018-04-01/databricks.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/datacatalog/resource-manager/readme.md b/specification/datacatalog/resource-manager/readme.md index d8141c0ee469..8a2adf1fe7df 100644 --- a/specification/datacatalog/resource-manager/readme.md +++ b/specification/datacatalog/resource-manager/readme.md @@ -141,27 +141,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DataCatalog/stable/2016-03-30/datacatalog.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/datafactory/resource-manager/readme.azureresourceschema.md b/specification/datafactory/resource-manager/readme.azureresourceschema.md index d73c49adc290..76766e48c563 100644 --- a/specification/datafactory/resource-manager/readme.azureresourceschema.md +++ b/specification/datafactory/resource-manager/readme.azureresourceschema.md @@ -21,6 +21,13 @@ output-folder: $(azureresourceschema-folder)/schemas # all the input files in this apiVersion input-file: - Microsoft.DataFactory/stable/2018-06-01/datafactory.json + - Microsoft.DataFactory/stable/2018-06-01/entityTypes/DataFlow.json + - Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json + - Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json + - Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json + - Microsoft.DataFactory/stable/2018-06-01/entityTypes/ManagedPrivateEndpoint.json + - Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json + - Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json ``` diff --git a/specification/datafactory/resource-manager/readme.md b/specification/datafactory/resource-manager/readme.md index 764f413e92bb..eb66b97b8020 100644 --- a/specification/datafactory/resource-manager/readme.md +++ b/specification/datafactory/resource-manager/readme.md @@ -207,28 +207,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DataFactory/stable/2018-06-01/datafactory.json - - $(this-folder)/Microsoft.DataFactory/preview/2017-09-01-preview/datafactory.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/datalake-analytics/resource-manager/readme.md b/specification/datalake-analytics/resource-manager/readme.md index 13dc4c7c3e79..1059c9049078 100644 --- a/specification/datalake-analytics/resource-manager/readme.md +++ b/specification/datalake-analytics/resource-manager/readme.md @@ -175,28 +175,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DataLakeAnalytics/stable/2016-11-01/account.json - - $(this-folder)/Microsoft.DataLakeAnalytics/preview/2015-10-01-preview/account.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/datalake-store/resource-manager/readme.md b/specification/datalake-store/resource-manager/readme.md index 82889495064d..be664c9fa1da 100644 --- a/specification/datalake-store/resource-manager/readme.md +++ b/specification/datalake-store/resource-manager/readme.md @@ -187,28 +187,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DataLakeStore/stable/2016-11-01/account.json - - $(this-folder)/Microsoft.DataLakeStore/preview/2015-10-01-preview/account.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/datamigration/resource-manager/readme.md b/specification/datamigration/resource-manager/readme.md index 8874cc7a8f43..5050fb4c3c00 100644 --- a/specification/datamigration/resource-manager/readme.md +++ b/specification/datamigration/resource-manager/readme.md @@ -223,129 +223,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/datamigration.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/Commands.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/Common.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToSourceMySqlTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToSourcePostgreSqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToSourceSqlServerTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetAzureDbForMySqlTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetAzureDbForPostgreSqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetSqlMiSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ConnectToTargetSqlSqlDbSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/GetTdeCertificatesSqlTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/GetUserTablesSqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/GetUserTablesSqlTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateMySqlAzureDbForMySqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateSqlServerSqlDbSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateSqlServerSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateSqlServerSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/MigrateSqlServerSqlMiSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/Projects.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/Services.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/Tasks.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/TasksCommon.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/MigrationValidation.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ValidateMigrationInputSqlServerSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ValidateMigrationInputSqlServerSqlMiSyncTask.json - - $(this-folder)/Microsoft.DataMigration/stable/2018-04-19/definitions/ValidateSyncMigrationInputSqlServerTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/datamigration.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Commands.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Common.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourceMySqlTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourceSqlServerTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourcePostgreSqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetAzureDbForMySqlTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetSqlMiSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetSqlSqlDbSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToTargetAzureDbForPostgreSqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/GetUserTablesSqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/GetUserTablesSqlTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSchemaSqlServerSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateMySqlAzureDbForMySqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMiSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSsisTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrationValidation.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MongoDbTasks.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/GetTdeCertificatesSqlTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Projects.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ServiceFeatureOCITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Services.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ServiceTasks.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/TasksCommon.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ValidateMigrationInputSqlServerSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ValidateSyncMigrationInputSqlServerTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ValidateMigrationInputSqlServerSqlMiSyncTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/datamigration.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/Common.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/ConnectToSourceSqlServerTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/ConnectToTargetSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/ConnectToTargetSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/GetUserTablesSqlTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/MigrateSqlServerSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/MigrateSqlServerSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/Projects.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/Services.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/Tasks.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/TasksCommon.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/MigrationValidation.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-31-preview/definitions/ValidateMigrationInputSqlServerSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/datamigration.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Common.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToSourceSqlServerTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ConnectToTargetSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/GetUserTablesSqlTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrateSqlServerSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Projects.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Services.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/Tasks.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/TasksCommon.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/MigrationValidation.json - - $(this-folder)/Microsoft.DataMigration/preview/2018-03-15-preview/definitions/ValidateMigrationInputSqlServerSqlMITask.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/datamigration.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/Common.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/ConnectToSourceSqlServerTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/ConnectToTargetSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/GetUserTablesSqlTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/MigrateSqlServerSqlDbTask.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/Projects.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/Services.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/Tasks.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/TasksCommon.json - - $(this-folder)/Microsoft.DataMigration/preview/2017-11-15-preview/definitions/MigrationValidation.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/datashare/resource-manager/readme.md b/specification/datashare/resource-manager/readme.md index 89da194dadc3..ff2f8a2b3183 100644 --- a/specification/datashare/resource-manager/readme.md +++ b/specification/datashare/resource-manager/readme.md @@ -120,27 +120,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json - - $(this-folder)/Microsoft.DataShare/stable/2019-11-01/DataShare.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/deploymentmanager/resource-manager/readme.md b/specification/deploymentmanager/resource-manager/readme.md index 4e01b0264c83..7e56fa895663 100644 --- a/specification/deploymentmanager/resource-manager/readme.md +++ b/specification/deploymentmanager/resource-manager/readme.md @@ -206,28 +206,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json - - $(this-folder)/Microsoft.DeploymentManager/preview/2018-09-01-preview/deploymentmanager.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/desktopvirtualization/resource-manager/readme.md b/specification/desktopvirtualization/resource-manager/readme.md index 5d79f0a477dc..7096c08a98df 100644 --- a/specification/desktopvirtualization/resource-manager/readme.md +++ b/specification/desktopvirtualization/resource-manager/readme.md @@ -112,29 +112,3 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DesktopVirtualization/preview/2019-01-23-preview/desktopvirtualization.json - - $(this-folder)/Microsoft.DesktopVirtualization/preview/2019-09-24-preview/desktopvirtualization.json - - $(this-folder)/Microsoft.DesktopVirtualization/preview/2019-12-10-preview/desktopvirtualization.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/deviceprovisioningservices/resource-manager/readme.azureresourceschema.md b/specification/deviceprovisioningservices/resource-manager/readme.azureresourceschema.md index 6e5d5657731e..307ea4b09f20 100644 --- a/specification/deviceprovisioningservices/resource-manager/readme.azureresourceschema.md +++ b/specification/deviceprovisioningservices/resource-manager/readme.azureresourceschema.md @@ -6,6 +6,8 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-devices-2020-09-01-preview + - tag: schema-devices-2020-03-01 - tag: schema-devices-2020-01-01 - tag: schema-devices-2018-01-22 - tag: schema-devices-2017-11-15 @@ -15,6 +17,28 @@ batch: Please also specify `--azureresourceschema-folder=`. +### Tag: schema-devices-2020-09-01-preview and azureresourceschema + +``` yaml $(tag) == 'schema-devices-2020-09-01-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.Devices/preview/2020-09-01-preview/iotdps.json + +``` + +### Tag: schema-devices-2020-03-01 and azureresourceschema + +``` yaml $(tag) == 'schema-devices-2020-03-01' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.Devices/stable/2020-03-01/iotdps.json + +``` + ### Tag: schema-devices-2020-01-01 and azureresourceschema ``` yaml $(tag) == 'schema-devices-2020-01-01' && $(azureresourceschema) diff --git a/specification/deviceprovisioningservices/resource-manager/readme.md b/specification/deviceprovisioningservices/resource-manager/readme.md index 02fbc7964bbe..1c2ab28cd471 100644 --- a/specification/deviceprovisioningservices/resource-manager/readme.md +++ b/specification/deviceprovisioningservices/resource-manager/readme.md @@ -218,29 +218,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Devices/preview/2017-08-21-preview/iotdps.json - - $(this-folder)/Microsoft.Devices/stable/2017-11-15/iotdps.json - - $(this-folder)/Microsoft.Devices/stable/2018-01-22/iotdps.json - - $(this-folder)/Microsoft.Devices/stable/2020-01-01/iotdps.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/devops/resource-manager/readme.md b/specification/devops/resource-manager/readme.md index 619f05952d10..cc8c568e45df 100644 --- a/specification/devops/resource-manager/readme.md +++ b/specification/devops/resource-manager/readme.md @@ -88,30 +88,6 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DevOps/preview/2019-07-01-preview/devops.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - ## trenton These settings apply only when `--trenton` is specified on the command line. diff --git a/specification/devspaces/resource-manager/readme.md b/specification/devspaces/resource-manager/readme.md index 35a8bf01c518..6444496e7006 100644 --- a/specification/devspaces/resource-manager/readme.md +++ b/specification/devspaces/resource-manager/readme.md @@ -118,30 +118,6 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DevSpaces/stable/2019-04-01/devspaces.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - ## Suppression ``` yaml directive: diff --git a/specification/devtestlabs/resource-manager/readme.md b/specification/devtestlabs/resource-manager/readme.md index c125824d8e57..48c43e2caf60 100644 --- a/specification/devtestlabs/resource-manager/readme.md +++ b/specification/devtestlabs/resource-manager/readme.md @@ -137,29 +137,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DevTestLab/stable/2018-09-15/DTL.json - - $(this-folder)/Microsoft.DevTestLab/stable/2016-05-15/DTL.json - - $(this-folder)/Microsoft.DevTestLab/preview/2015-05-21-preview/DTL.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/digitaltwins/resource-manager/readme.azureresourceschema.md b/specification/digitaltwins/resource-manager/readme.azureresourceschema.md index 32aca0b9a388..851a70ff5ed9 100644 --- a/specification/digitaltwins/resource-manager/readme.azureresourceschema.md +++ b/specification/digitaltwins/resource-manager/readme.azureresourceschema.md @@ -6,12 +6,24 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-digitaltwins-2020-10-31 - tag: schema-digitaltwins-2020-03-01-preview ``` Please also specify `--azureresourceschema-folder=`. +### Tag: schema-digitaltwins-2020-10-31 and azureresourceschema + +``` yaml $(tag) == 'schema-digitaltwins-2020-10-31' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.DigitalTwins/stable/2020-10-31/digitaltwins.json + +``` + ### Tag: schema-digitaltwins-2020-03-01-preview and azureresourceschema ``` yaml $(tag) == 'schema-digitaltwins-2020-03-01-preview' && $(azureresourceschema) diff --git a/specification/digitaltwins/resource-manager/readme.md b/specification/digitaltwins/resource-manager/readme.md index 456d45dee6c9..9b4edd43b37d 100644 --- a/specification/digitaltwins/resource-manager/readme.md +++ b/specification/digitaltwins/resource-manager/readme.md @@ -100,31 +100,6 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DigitalTwins/stable/2020-10-31/digitaltwins.json - - $(this-folder)/Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - ## Suppression ``` yaml diff --git a/specification/dnc/resource-manager/readme.md b/specification/dnc/resource-manager/readme.md index 15b1f9550c12..6b1b089bee9f 100644 --- a/specification/dnc/resource-manager/readme.md +++ b/specification/dnc/resource-manager/readme.md @@ -115,27 +115,3 @@ See configuration in [readme.python.md](./readme.python.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DelegatedNetwork/preview/2020-08-08-preview/DelegatedNetwork.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/dns/resource-manager/readme.md b/specification/dns/resource-manager/readme.md index ff5240e3224f..5d8de0645a02 100644 --- a/specification/dns/resource-manager/readme.md +++ b/specification/dns/resource-manager/readme.md @@ -231,32 +231,3 @@ input-file: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Network/stable/2018-05-01/dns.json - - $(this-folder)/Microsoft.Network/preview/2018-03-01-preview/dns.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/dns.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/dns.json - - $(this-folder)/Microsoft.Network/stable/2016-04-01/dns.json - - $(this-folder)/Microsoft.Network/preview/2015-05-04-preview/dns.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/domainservices/resource-manager/readme.md b/specification/domainservices/resource-manager/readme.md index 02f34c0c5577..a9d111ac2021 100644 --- a/specification/domainservices/resource-manager/readme.md +++ b/specification/domainservices/resource-manager/readme.md @@ -158,31 +158,3 @@ generate-interface: true -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AAD/stable/2020-01-01/domainservices.json - - $(this-folder)/Microsoft.AAD/stable/2020-01-01/oucontainer.json - - $(this-folder)/Microsoft.AAD/stable/2017-06-01/domainservices.json - - $(this-folder)/Microsoft.AAD/stable/2017-06-01/oucontainer.json - - $(this-folder)/Microsoft.AAD/stable/2017-01-01/domainservices.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/engagementfabric/resource-manager/readme.md b/specification/engagementfabric/resource-manager/readme.md index 887f9e1a092f..c34f5beb220e 100644 --- a/specification/engagementfabric/resource-manager/readme.md +++ b/specification/engagementfabric/resource-manager/readme.md @@ -131,27 +131,3 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-engagementfabric See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.EngagementFabric/preview/2018-09-01/EngagementFabric.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/eventgrid/resource-manager/readme.md b/specification/eventgrid/resource-manager/readme.md index e35224739683..1ba6e68d7af4 100644 --- a/specification/eventgrid/resource-manager/readme.md +++ b/specification/eventgrid/resource-manager/readme.md @@ -205,36 +205,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.EventGrid/stable/2020-06-01/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/preview/2020-01-01-preview/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/stable/2019-06-01/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/preview/2019-02-01-preview/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/stable/2019-01-01/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/preview/2018-09-15-preview/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/preview/2018-05-01-preview/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/stable/2018-01-01/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/preview/2017-09-15-preview/EventGrid.json - - $(this-folder)/Microsoft.EventGrid/preview/2017-06-15-preview/EventGrid.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/eventhub/resource-manager/readme.md b/specification/eventhub/resource-manager/readme.md index b717c083c289..1e0cfd30b013 100644 --- a/specification/eventhub/resource-manager/readme.md +++ b/specification/eventhub/resource-manager/readme.md @@ -157,44 +157,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/AuthorizationRules.json - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/CheckNameAvailability.json - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/consumergroups.json - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/disasterRecoveryConfigs.json - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/eventhubs.json - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/namespaces.json - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/networkRuleSets.json - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/operations.json - - $(this-folder)/Microsoft.EventHub/stable/2017-04-01/sku.json - - $(this-folder)/Microsoft.EventHub/stable/2015-08-01/EventHub.json - - $(this-folder)/Microsoft.EventHub/stable/2014-09-01/EventHub.json - - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/AvailableClusterRegions-preview.json - - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/Clusters-preview.json - - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/ipfilterrules-preview.json - - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/namespaces-preview.json - - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/quotaConfiguration-preview.json - - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/virtualnetworkrules-preview.json - - $(this-folder)/Microsoft.EventHub/preview/2018-01-01-preview/networkrulessets-preview.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/frontdoor/resource-manager/readme.md b/specification/frontdoor/resource-manager/readme.md index ce0e0051fb2b..f7f90e9f4fcf 100644 --- a/specification/frontdoor/resource-manager/readme.md +++ b/specification/frontdoor/resource-manager/readme.md @@ -264,45 +264,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Network/stable/2020-05-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/networkexperiment.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/frontdoor.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/network.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/frontdoor.json - - $(this-folder)/Microsoft.Network/stable/2020-01-01/network.json - - $(this-folder)/Microsoft.Network/stable/2020-01-01/frontdoor.json - - $(this-folder)/Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-05-01/frontdoor.json - - $(this-folder)/Microsoft.Network/stable/2019-05-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/frontdoor.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/network.json - - $(this-folder)/Microsoft.Network/preview/2018-08-01-preview/frontdoor.json - - $(this-folder)/Microsoft.Network/preview/2018-08-01-preview/network.json - - $(this-folder)/Microsoft.Network/preview/2019-03-01-preview/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/preview/2018-08-01-preview/webapplicationfirewall.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/guestconfiguration/resource-manager/readme.md b/specification/guestconfiguration/resource-manager/readme.md index 8fba3db7e828..a114e01a1f17 100644 --- a/specification/guestconfiguration/resource-manager/readme.md +++ b/specification/guestconfiguration/resource-manager/readme.md @@ -137,30 +137,3 @@ csharp: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json - - $(this-folder)/Microsoft.GuestConfiguration/stable/2018-11-20/guestconfiguration.json - - $(this-folder)/Microsoft.GuestConfiguration/preview/2018-06-30-preview/guestconfiguration.json - - $(this-folder)/Microsoft.GuestConfiguration/preview/2018-01-20-preview/guestconfiguration.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/hanaonazure/resource-manager/readme.md b/specification/hanaonazure/resource-manager/readme.md index 60358b1842ef..eb1b84774518 100644 --- a/specification/hanaonazure/resource-manager/readme.md +++ b/specification/hanaonazure/resource-manager/readme.md @@ -116,28 +116,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json - - $(this-folder)/Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/hardwaresecuritymodules/resource-manager/readme.md b/specification/hardwaresecuritymodules/resource-manager/readme.md index bb675df38663..422e0f3f94bf 100644 --- a/specification/hardwaresecuritymodules/resource-manager/readme.md +++ b/specification/hardwaresecuritymodules/resource-manager/readme.md @@ -45,29 +45,6 @@ input-file: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.HardwareSecurityModules/preview/2018-10-31-preview/dedicatedhsm.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` # Code Generation diff --git a/specification/hdinsight/resource-manager/readme.md b/specification/hdinsight/resource-manager/readme.md index e1b948548a41..53114925c2bd 100644 --- a/specification/hdinsight/resource-manager/readme.md +++ b/specification/hdinsight/resource-manager/readme.md @@ -215,41 +215,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/cluster.json - - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/applications.json - - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/locations.json - - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/configurations.json - - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/extensions.json - - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/scriptActions.json - - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/operations.json - - $(this-folder)/Microsoft.HDInsight/stable/2018-06-01-preview/virtualMachines.json - - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/cluster.json - - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/applications.json - - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/locations.json - - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/configurations.json - - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/extensions.json - - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/scriptActions.json - - $(this-folder)/Microsoft.HDInsight/preview/2015-03-01-preview/operations.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/healthcareapis/resource-manager/readme.azureresourceschema.md b/specification/healthcareapis/resource-manager/readme.azureresourceschema.md index 79acdb91e0c6..42e1803f9586 100644 --- a/specification/healthcareapis/resource-manager/readme.azureresourceschema.md +++ b/specification/healthcareapis/resource-manager/readme.azureresourceschema.md @@ -6,6 +6,7 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-healthcareapis-2020-03-15 - tag: schema-healthcareapis-2019-09-16 - tag: schema-healthcareapis-2018-08-20-preview @@ -13,6 +14,17 @@ batch: Please also specify `--azureresourceschema-folder=`. +### Tag: schema-healthcareapis-2020-03-15 and azureresourceschema + +``` yaml $(tag) == 'schema-healthcareapis-2020-03-15' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.HealthcareApis/stable/2020-03-15/healthcare-apis.json + +``` + ### Tag: schema-healthcareapis-2019-09-16 and azureresourceschema ``` yaml $(tag) == 'schema-healthcareapis-2019-09-16' && $(azureresourceschema) diff --git a/specification/healthcareapis/resource-manager/readme.md b/specification/healthcareapis/resource-manager/readme.md index 6b873de67d45..43f34c10e10f 100644 --- a/specification/healthcareapis/resource-manager/readme.md +++ b/specification/healthcareapis/resource-manager/readme.md @@ -159,27 +159,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json - - $(this-folder)/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/hybridcompute/resource-manager/readme.md b/specification/hybridcompute/resource-manager/readme.md index 6f44b7cef442..894728ac0028 100644 --- a/specification/hybridcompute/resource-manager/readme.md +++ b/specification/hybridcompute/resource-manager/readme.md @@ -144,32 +144,3 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.typescript](./readme.typescript.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.HybridCompute/preview/2020-08-15-preview/HybridCompute.json - - $(this-folder)/Microsoft.HybridCompute/preview/2020-08-15-preview/privateLinkScopes.json - - $(this-folder)/Microsoft.HybridCompute/preview/2019-03-18/HybridCompute.json - - $(this-folder)/Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json - - $(this-folder)/Microsoft.HybridCompute/stable/2019-12-12/HybridCompute.json - - $(this-folder)/Microsoft.HybridCompute/preview/2020-07-30-preview/HybridCompute.json - - $(this-folder)/Microsoft.HybridCompute/stable/2020-08-02/HybridCompute.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/hybriddatamanager/resource-manager/readme.md b/specification/hybriddatamanager/resource-manager/readme.md index 0184fef60e98..d692511784d7 100644 --- a/specification/hybriddatamanager/resource-manager/readme.md +++ b/specification/hybriddatamanager/resource-manager/readme.md @@ -157,28 +157,3 @@ python: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.HybridData/stable/2019-06-01/hybriddata.json - - $(this-folder)/Microsoft.HybridData/stable/2016-06-01/hybriddata.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/hybridkubernetes/resource-manager/readme.md b/specification/hybridkubernetes/resource-manager/readme.md index 096f12a29479..67c0b6f1e6a0 100644 --- a/specification/hybridkubernetes/resource-manager/readme.md +++ b/specification/hybridkubernetes/resource-manager/readme.md @@ -86,26 +86,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/privatepreview/2019-09-01-privatepreview/somefile.json -``` \ No newline at end of file diff --git a/specification/hybridnetwork/resource-manager/readme.md b/specification/hybridnetwork/resource-manager/readme.md index f8bbe17ef2e9..0db26ee67c23 100644 --- a/specification/hybridnetwork/resource-manager/readme.md +++ b/specification/hybridnetwork/resource-manager/readme.md @@ -88,32 +88,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/common.json - - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunction.json - - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/device.json - - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/operations.json - - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/vendor.json - - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunctionVendors.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/imagebuilder/resource-manager/readme.md b/specification/imagebuilder/resource-manager/readme.md index 641e8d1fe520..1f98ca32f769 100644 --- a/specification/imagebuilder/resource-manager/readme.md +++ b/specification/imagebuilder/resource-manager/readme.md @@ -172,29 +172,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json - - $(this-folder)/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/imagebuilder.json - - $(this-folder)/Microsoft.VirtualMachineImages/preview/2018-02-01-preview/imagebuilder.json - - $(this-folder)/Microsoft.VirtualMachineImages/preview/2019-02-01-preview/imagebuilder.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/intune/resource-manager/readme.md b/specification/intune/resource-manager/readme.md index c6f9f0bfadba..5c25fc391ffc 100644 --- a/specification/intune/resource-manager/readme.md +++ b/specification/intune/resource-manager/readme.md @@ -94,28 +94,3 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-intune See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Intune/preview/2015-01-14-preview/intune.json - - $(this-folder)/Microsoft.Intune/preview/2015-01-14-privatepreview/intune.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/iotcentral/resource-manager/readme.md b/specification/iotcentral/resource-manager/readme.md index 87d8636674e5..7870e12dbded 100644 --- a/specification/iotcentral/resource-manager/readme.md +++ b/specification/iotcentral/resource-manager/readme.md @@ -138,28 +138,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.IoTCentral/stable/2018-09-01/iotcentral.json - - $(this-folder)/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/iotcentral.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/iothub/resource-manager/readme.azureresourceschema.md b/specification/iothub/resource-manager/readme.azureresourceschema.md index 53f6e9287e78..384ec99b61f0 100644 --- a/specification/iothub/resource-manager/readme.azureresourceschema.md +++ b/specification/iothub/resource-manager/readme.azureresourceschema.md @@ -6,6 +6,7 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-devices-2020-08-01 - tag: schema-devices-2020-07-10-preview - tag: schema-devices-2020-06-15 - tag: schema-devices-2020-04-01 @@ -25,6 +26,17 @@ batch: Please also specify `--azureresourceschema-folder=`. +### Tag: schema-devices-2020-08-01 and azureresourceschema + +``` yaml $(tag) == 'schema-devices-2020-08-01' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.Devices/stable/2020-08-01/iothub.json + +``` + ### Tag: schema-devices-2020-07-10-preview and azureresourceschema ``` yaml $(tag) == 'schema-devices-2020-07-10-preview' && $(azureresourceschema) diff --git a/specification/iothub/resource-manager/readme.md b/specification/iothub/resource-manager/readme.md index 8f6dcc1feef9..229f06971727 100644 --- a/specification/iothub/resource-manager/readme.md +++ b/specification/iothub/resource-manager/readme.md @@ -217,39 +217,3 @@ See configuration in [readme.java.md](./readme.go.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Devices/preview/2020-07-10-preview/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2020-06-15/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2020-04-01/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2020-03-01/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2019-11-04/iothub.json - - $(this-folder)/Microsoft.Devices/preview/2019-07-01-preview/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2019-03-22/iothub.json - - $(this-folder)/Microsoft.Devices/preview/2019-03-22-preview/iothub.json - - $(this-folder)/Microsoft.Devices/preview/2018-12-01-preview/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2018-04-01/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2018-01-22/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2017-07-01/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2017-01-19/iothub.json - - $(this-folder)/Microsoft.Devices/stable/2016-02-03/iothub.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/iotspaces/resource-manager/readme.md b/specification/iotspaces/resource-manager/readme.md index 11823aea46d4..49a0a68b3682 100644 --- a/specification/iotspaces/resource-manager/readme.md +++ b/specification/iotspaces/resource-manager/readme.md @@ -101,27 +101,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.IoTSpaces/preview/2017-10-01-preview/iotspaces.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/keyvault/resource-manager/readme.md b/specification/keyvault/resource-manager/readme.md index 0fec867b1a2c..ae51d5470d93 100644 --- a/specification/keyvault/resource-manager/readme.md +++ b/specification/keyvault/resource-manager/readme.md @@ -151,38 +151,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.KeyVault/stable/2019-09-01/keyvault.json - - $(this-folder)/Microsoft.KeyVault/stable/2019-09-01/providers.json - - $(this-folder)/Microsoft.KeyVault/preview/2020-04-01-preview/managedHsm.json - - $(this-folder)/Microsoft.KeyVault/preview/2020-04-01-preview/keyvault.json - - $(this-folder)/Microsoft.KeyVault/preview/2020-04-01-preview/providers.json - - $(this-folder)/Microsoft.KeyVault/preview/2020-04-01-preview/secrets.json - - $(this-folder)/Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json - - $(this-folder)/Microsoft.KeyVault/preview/2018-02-14-preview/providers.json - - $(this-folder)/Microsoft.KeyVault/stable/2018-02-14/keyvault.json - - $(this-folder)/Microsoft.KeyVault/stable/2018-02-14/providers.json - - $(this-folder)/Microsoft.KeyVault/stable/2016-10-01/keyvault.json - - $(this-folder)/Microsoft.KeyVault/stable/2016-10-01/providers.json - - $(this-folder)/Microsoft.KeyVault/stable/2015-06-01/keyvault.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.md b/specification/kubernetesconfiguration/resource-manager/readme.md index 0c8018090c07..b4f77c2a7a2f 100644 --- a/specification/kubernetesconfiguration/resource-manager/readme.md +++ b/specification/kubernetesconfiguration/resource-manager/readme.md @@ -85,26 +85,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` \ No newline at end of file diff --git a/specification/labservices/resource-manager/readme.md b/specification/labservices/resource-manager/readme.md index efe9d284406e..5e3ead954e9b 100644 --- a/specification/labservices/resource-manager/readme.md +++ b/specification/labservices/resource-manager/readme.md @@ -151,27 +151,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.LabServices/stable/2018-10-15/ML.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/logic/resource-manager/readme.md b/specification/logic/resource-manager/readme.md index dc05370df8a7..b6a7b4699e33 100644 --- a/specification/logic/resource-manager/readme.md +++ b/specification/logic/resource-manager/readme.md @@ -252,34 +252,6 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Logic/stable/2019-05-01/logic.json - - $(this-folder)/Microsoft.Logic/preview/2018-07-01-preview/logic.json - - $(this-folder)/Microsoft.Logic/stable/2016-06-01/logic.json - - $(this-folder)/Microsoft.Logic/preview/2015-08-01-preview/logic.json - - $(this-folder)/Microsoft.Logic/preview/2015-02-01-preview/logic.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - ## trenton These settings apply only when `--trenton` is specified on the command line. diff --git a/specification/machinelearning/resource-manager/readme.md b/specification/machinelearning/resource-manager/readme.md index fbfc02d26cde..bf21f829d033 100644 --- a/specification/machinelearning/resource-manager/readme.md +++ b/specification/machinelearning/resource-manager/readme.md @@ -258,30 +258,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.MachineLearning/stable/2017-01-01/webservices.json - - $(this-folder)/Microsoft.MachineLearning/preview/2016-05-01-preview/commitmentPlans.json - - $(this-folder)/Microsoft.MachineLearning/stable/2016-04-01/workspaces.json - - $(this-folder)/Microsoft.MachineLearning/stable/2019-10-01/workspaces.json - - $(this-folder)/Microsoft.MachineLearning/preview/2016-05-01-preview/webservices.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/machinelearningcompute/resource-manager/readme.md b/specification/machinelearningcompute/resource-manager/readme.md index fa43887fee44..1a5e302eeb77 100644 --- a/specification/machinelearningcompute/resource-manager/readme.md +++ b/specification/machinelearningcompute/resource-manager/readme.md @@ -131,28 +131,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.MachineLearningCompute/preview/2017-08-01-preview/machineLearningCompute.json - - $(this-folder)/Microsoft.MachineLearningCompute/preview/2017-06-01-preview/machineLearningCompute.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/machinelearningexperimentation/resource-manager/readme.md b/specification/machinelearningexperimentation/resource-manager/readme.md index 3f22d68551cb..49d88e3711b6 100644 --- a/specification/machinelearningexperimentation/resource-manager/readme.md +++ b/specification/machinelearningexperimentation/resource-manager/readme.md @@ -118,27 +118,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.MachineLearningExperimentation/preview/2017-05-01-preview/machineLearningExperimentation.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/machinelearningservices/resource-manager/readme.md b/specification/machinelearningservices/resource-manager/readme.md index b966a1de34be..af746a0266f1 100644 --- a/specification/machinelearningservices/resource-manager/readme.md +++ b/specification/machinelearningservices/resource-manager/readme.md @@ -387,39 +387,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-06-01/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/preview/2020-05-15-preview/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-04-01/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-01-01/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/stable/2019-11-01/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/preview/2020-05-01-preview/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/preview/2020-04-01-preview/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json - - $(this-folder)/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/maintenance/resource-manager/readme.md b/specification/maintenance/resource-manager/readme.md index a92762d027f6..b1646525c92b 100644 --- a/specification/maintenance/resource-manager/readme.md +++ b/specification/maintenance/resource-manager/readme.md @@ -109,28 +109,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Maintenance/preview/2020-07-01-preview/Maintenance.json - - $(this-folder)/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json - - $(this-folder)/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/managednetwork/resource-manager/readme.md b/specification/managednetwork/resource-manager/readme.md index f0284d03e6a1..c7aba395d3be 100644 --- a/specification/managednetwork/resource-manager/readme.md +++ b/specification/managednetwork/resource-manager/readme.md @@ -80,25 +80,3 @@ See configuration in [readme.cli.md](./readme.cli.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ManagedNetwork/preview/2019-06-01-preview/managedNetwork.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/managedservices/resource-manager/readme.md b/specification/managedservices/resource-manager/readme.md index a85ba96d422c..2f2b6ced062b 100644 --- a/specification/managedservices/resource-manager/readme.md +++ b/specification/managedservices/resource-manager/readme.md @@ -121,30 +121,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ManagedServices/preview/2020-02-01-preview/managedservices.json - - $(this-folder)/Microsoft.ManagedServices/stable/2019-09-01/managedservices.json - - $(this-folder)/Microsoft.ManagedServices/stable/2019-06-01/managedservices.json - - $(this-folder)/Microsoft.ManagedServices/preview/2019-04-01-preview/managedservices.json - - $(this-folder)/Microsoft.ManagedServices/preview/2018-06-01-preview/managedservices.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/managementgroups/resource-manager/readme.md b/specification/managementgroups/resource-manager/readme.md index 13eda9a91e65..2b9de18f0e63 100644 --- a/specification/managementgroups/resource-manager/readme.md +++ b/specification/managementgroups/resource-manager/readme.md @@ -274,33 +274,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Management/stable/2020-05-01/management.json - - $(this-folder)/Microsoft.Management/stable/2020-02-01/management.json - - $(this-folder)/Microsoft.Management/stable/2019-11-01/management.json - - $(this-folder)/Microsoft.Management/preview/2018-03-01-preview/management.json - - $(this-folder)/Microsoft.Management/preview/2018-01-01-preview/management.json - - $(this-folder)/Microsoft.Management/preview/2017-11-01-preview/management.json - - $(this-folder)/Microsoft.Management/preview/2017-08-31-preview/management.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/managementpartner/resource-manager/readme.md b/specification/managementpartner/resource-manager/readme.md index ae1a91879032..1ee6437e3a9b 100644 --- a/specification/managementpartner/resource-manager/readme.md +++ b/specification/managementpartner/resource-manager/readme.md @@ -103,27 +103,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/maps/resource-manager/readme.md b/specification/maps/resource-manager/readme.md index ea8338cf46f7..028f371de0f1 100644 --- a/specification/maps/resource-manager/readme.md +++ b/specification/maps/resource-manager/readme.md @@ -230,28 +230,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Maps/preview/2020-02-01-preview/maps-management.json - - $(this-folder)/Microsoft.Maps/stable/2017-01-01-preview/maps-management.json - - $(this-folder)/Microsoft.Maps/stable/2018-05-01/maps-management.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/mariadb/resource-manager/readme.md b/specification/mariadb/resource-manager/readme.md index 61fc6d377c47..ae97bb54f0c3 100644 --- a/specification/mariadb/resource-manager/readme.md +++ b/specification/mariadb/resource-manager/readme.md @@ -177,37 +177,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DBforMariaDB/preview/2018-06-01-preview/mariadb.json - - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json - - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/QueryPerformanceInsights.json - - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/PerformanceRecommendations.json - - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateEndpointConnections.json - - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateLinkResources.json - - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/ServerSecurityAlertPolicies.json - - $(this-folder)/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/mariadb.json - - $(this-folder)/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/PrivateEndpointConnections.json - - $(this-folder)/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/PrivateLinkResources.json - - $(this-folder)/Microsoft.DBforMariaDB/preview/2020-01-01-privatepreview/DataEncryptionKeys.json - - $(this-folder)/Microsoft.DBforMariaDB/stable/2020-01-01/Servers.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/marketplace/resource-manager/readme.md b/specification/marketplace/resource-manager/readme.md index b860e660ea71..ee69458b990f 100644 --- a/specification/marketplace/resource-manager/readme.md +++ b/specification/marketplace/resource-manager/readme.md @@ -83,27 +83,3 @@ csharp: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Marketplace/stable/2019-12-01/Marketplace.json - - $(this-folder)/Microsoft.Marketplace/stable/2020-01-01/Marketplace.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/marketplaceordering/resource-manager/readme.md b/specification/marketplaceordering/resource-manager/readme.md index 862ab1178325..8b9d60577378 100644 --- a/specification/marketplaceordering/resource-manager/readme.md +++ b/specification/marketplaceordering/resource-manager/readme.md @@ -201,27 +201,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.MarketplaceOrdering/stable/2015-06-01/Agreements.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/mediaservices/resource-manager/readme.md b/specification/mediaservices/resource-manager/readme.md index 8f1b6a467699..034130b45ce3 100644 --- a/specification/mediaservices/resource-manager/readme.md +++ b/specification/mediaservices/resource-manager/readme.md @@ -333,64 +333,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Media/stable/2020-05-01/AccountFilters.json - - $(this-folder)/Microsoft.Media/stable/2020-05-01/Accounts.json - - $(this-folder)/Microsoft.Media/stable/2020-05-01/AssetsAndAssetFilters.json - - $(this-folder)/Microsoft.Media/stable/2020-05-01/ContentKeyPolicies.json - - $(this-folder)/Microsoft.Media/stable/2020-05-01/Encoding.json - - $(this-folder)/Microsoft.Media/stable/2020-05-01/StreamingPoliciesAndStreamingLocators.json - - $(this-folder)/Microsoft.Media/stable/2020-05-01/streamingservice.json - - $(this-folder)/Microsoft.Media/stable/2020-05-01/Common.json - - $(this-folder)/Microsoft.Media/stable/2018-07-01/AccountFilters.json - - $(this-folder)/Microsoft.Media/stable/2018-07-01/Accounts.json - - $(this-folder)/Microsoft.Media/stable/2018-07-01/AssetsAndAssetFilters.json - - $(this-folder)/Microsoft.Media/stable/2018-07-01/ContentKeyPolicies.json - - $(this-folder)/Microsoft.Media/stable/2018-07-01/Encoding.json - - $(this-folder)/Microsoft.Media/preview/2020-02-01-preview/MediaGraphs.json - - $(this-folder)/Microsoft.Media/stable/2018-07-01/StreamingPoliciesAndStreamingLocators.json - - $(this-folder)/Microsoft.Media/stable/2018-07-01/streamingservice.json - - $(this-folder)/Microsoft.Media/preview/2019-09-01-preview/MediaGraphs.json - - $(this-folder)/Microsoft.Media/preview/2019-05-01-preview/AccountFilters.json - - $(this-folder)/Microsoft.Media/preview/2019-05-01-preview/Accounts.json - - $(this-folder)/Microsoft.Media/preview/2019-05-01-preview/AssetsAndAssetFilters.json - - $(this-folder)/Microsoft.Media/preview/2019-05-01-preview/Common.json - - $(this-folder)/Microsoft.Media/preview/2019-05-01-preview/ContentKeyPolicies.json - - $(this-folder)/Microsoft.Media/preview/2019-05-01-preview/Encoding.json - - $(this-folder)/Microsoft.Media/preview/2019-05-01-preview/StreamingPoliciesAndStreamingLocators.json - - $(this-folder)/Microsoft.Media/preview/2019-05-01-preview/streamingservice.json - - $(this-folder)/Microsoft.Media/stable/2018-07-01/Common.json - - $(this-folder)/Microsoft.Media/stable/2015-10-01/media.json - - $(this-folder)/Microsoft.Media/preview/2018-03-30-preview/Accounts.json - - $(this-folder)/Microsoft.Media/preview/2018-03-30-preview/Assets.json - - $(this-folder)/Microsoft.Media/preview/2018-03-30-preview/ContentKeyPolicies.json - - $(this-folder)/Microsoft.Media/preview/2018-03-30-preview/Encoding.json - - $(this-folder)/Microsoft.Media/preview/2018-03-30-preview/StreamingPoliciesAndStreamingLocators.json - - $(this-folder)/Microsoft.Media/preview/2018-03-30-preview/streamingservice.json - - $(this-folder)/Microsoft.Media/preview/2018-06-01-preview/Accounts.json - - $(this-folder)/Microsoft.Media/preview/2018-06-01-preview/Assets.json - - $(this-folder)/Microsoft.Media/preview/2018-06-01-preview/ContentKeyPolicies.json - - $(this-folder)/Microsoft.Media/preview/2018-06-01-preview/Encoding.json - - $(this-folder)/Microsoft.Media/preview/2018-06-01-preview/StreamingPoliciesAndStreamingLocators.json - - $(this-folder)/Microsoft.Media/preview/2018-06-01-preview/streamingservice.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/migrate/resource-manager/readme.md b/specification/migrate/resource-manager/readme.md index 87e47b198f28..bb38ec4e0480 100644 --- a/specification/migrate/resource-manager/readme.md +++ b/specification/migrate/resource-manager/readme.md @@ -134,29 +134,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.OffAzure/stable/2020-07-07/migrate.json - - $(this-folder)/Microsoft.Migrate/stable/2018-02-02/migrate.json - - $(this-folder)/Microsoft.Migrate/stable/2019-10-01/migrate.json - - $(this-folder)/Microsoft.OffAzure/stable/2020-01-01/migrate.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/migrateprojects/resource-manager/readme.md b/specification/migrateprojects/resource-manager/readme.md index 79ca82ca7085..3b4299f2cf5d 100644 --- a/specification/migrateprojects/resource-manager/readme.md +++ b/specification/migrateprojects/resource-manager/readme.md @@ -105,27 +105,3 @@ output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-09-01-pr See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Migrate/preview/2018-09-01-preview/migrate.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/mixedreality/resource-manager/readme.md b/specification/mixedreality/resource-manager/readme.md index 100d68142ecd..eec4de896ddd 100644 --- a/specification/mixedreality/resource-manager/readme.md +++ b/specification/mixedreality/resource-manager/readme.md @@ -153,34 +153,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.MixedReality/stable/2020-05-01/proxy.json - - $(this-folder)/Microsoft.MixedReality/stable/2020-05-01/spatial-anchors.json - - $(this-folder)/Microsoft.MixedReality/preview/2020-04-06-preview/remote-rendering.json - - $(this-folder)/Microsoft.MixedReality/preview/2020-04-06-preview/proxy.json - - $(this-folder)/Microsoft.MixedReality/preview/2019-12-02-preview/proxy.json - - $(this-folder)/Microsoft.MixedReality/preview/2019-12-02-preview/remote-rendering.json - - $(this-folder)/Microsoft.MixedReality/preview/2019-12-02-preview/spatial-anchors.json - - $(this-folder)/Microsoft.MixedReality/preview/2019-02-28-preview/mixedreality.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/monitor/resource-manager/readme.md b/specification/monitor/resource-manager/readme.md index f923df3f8a90..77df0e2c6e18 100644 --- a/specification/monitor/resource-manager/readme.md +++ b/specification/monitor/resource-manager/readme.md @@ -633,68 +633,3 @@ input-file: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json - - $(this-folder)/Microsoft.Insights/preview/2020-01-01-preview/managementGroupDiagnosticSettings_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-04-01/autoscale_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-04-01/operations_API.json - - $(this-folder)/Microsoft.Insights/stable/2016-03-01/alertRulesIncidents_API.json - - $(this-folder)/Microsoft.Insights/stable/2016-03-01/alertRules_API.json - - $(this-folder)/Microsoft.Insights/stable/2016-03-01/logProfiles_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettings_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettingsCategories_API.json - - $(this-folder)/Microsoft.Insights/stable/2019-06-01/actionGroups_API.json - - $(this-folder)/Microsoft.Insights/stable/2017-04-01/activityLogAlerts_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-04-01/activityLogs_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-04-01/eventCategories_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-04-01/tenantActivityLogs_API.json - - $(this-folder)/Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json - - $(this-folder)/Microsoft.Insights/stable/2018-01-01/metrics_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-11-01-preview/baseline_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-11-01-preview/calculateBaseline_API.json - - $(this-folder)/Microsoft.Insights/stable/2019-03-01/metricBaselines_API.json - - $(this-folder)/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json - - $(this-folder)/Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json - - $(this-folder)/Microsoft.Insights/preview/2018-11-27-preview/vmInsightsOnboarding_API.json - - $(this-folder)/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json - - $(this-folder)/Microsoft.Insights/stable/2019-03-01/actionGroups_API.json - - $(this-folder)/Microsoft.Insights/stable/2018-09-01/actionGroups_API.json - - $(this-folder)/Microsoft.Insights/stable/2018-03-01/actionGroups_API.json - - $(this-folder)/Microsoft.Insights/stable/2017-04-01/actionGroups_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/metricDefinitions_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/metrics_API.json - - $(this-folder)/Microsoft.Insights/preview/2019-11-01-preview/dataCollectionRuleAssociations_API.json - - $(this-folder)/Microsoft.Insights/preview/2019-11-01-preview/dataCollectionRules_API.json - - $(this-folder)/Microsoft.Insights/stable/2018-09-01/baseline_API.json - - $(this-folder)/Microsoft.Insights/stable/2018-09-01/calculateBaseline_API.json - - $(this-folder)/Microsoft.Insights/preview/2018-06-01-preview/guestDiagnosticSettingsAssociation_API.json - - $(this-folder)/Microsoft.Insights/preview/2018-06-01-preview/guestDiagnosticSettings_API.json - - $(this-folder)/Microsoft.Insights/preview/2017-03-01-preview/activityLogAlerts_API.json - - $(this-folder)/Microsoft.Insights/stable/2016-09-01/metrics_API.json - - $(this-folder)/Microsoft.Insights/stable/2016-09-01/serviceDiagnosticsSettings_API.json - - $(this-folder)/Microsoft.Insights/stable/2016-03-01/metricDefinitions_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-07-01/serviceDiagnosticsSettings_API.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/msi/resource-manager/readme.md b/specification/msi/resource-manager/readme.md index b28f0e3f39cb..5a9b8cdbc7ef 100644 --- a/specification/msi/resource-manager/readme.md +++ b/specification/msi/resource-manager/readme.md @@ -150,28 +150,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ManagedIdentity/stable/2018-11-30/ManagedIdentity.json - - $(this-folder)/Microsoft.ManagedIdentity/preview/2015-08-31-preview/ManagedIdentity.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/mysql/resource-manager/readme.md b/specification/mysql/resource-manager/readme.md index f7a9793c57bf..f9385b4bab5a 100644 --- a/specification/mysql/resource-manager/readme.md +++ b/specification/mysql/resource-manager/readme.md @@ -181,39 +181,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json - - $(this-folder)/Microsoft.DBforMySQL/stable/2017-12-01/mysql.json - - $(this-folder)/Microsoft.DBforMySQL/stable/2017-12-01/ServerSecurityAlertPolicies.json - - $(this-folder)/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/mysql.json - - $(this-folder)/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/PrivateEndpointConnections.json - - $(this-folder)/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/PrivateLinkResources.json - - $(this-folder)/Microsoft.DBforMySQL/stable/2018-06-01/QueryPerformanceInsights.json - - $(this-folder)/Microsoft.DBforMySQL/stable/2018-06-01/PerformanceRecommendations.json - - $(this-folder)/Microsoft.DBforMySQL/stable/2018-06-01/PrivateEndpointConnections.json - - $(this-folder)/Microsoft.DBforMySQL/stable/2018-06-01/PrivateLinkResources.json - - $(this-folder)/Microsoft.DBforMySQL/preview/2020-01-01-privatepreview/DataEncryptionKeys.json - - $(this-folder)/Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json - - $(this-folder)/Microsoft.DBforMySQL/stable/2020-01-01/Servers.json - - $(this-folder)/Microsoft.DBforMySQL/preview/2020-07-01-privatepreview/mysql.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/netapp/resource-manager/readme.md b/specification/netapp/resource-manager/readme.md index 51a0709b1b27..86dd674a8790 100644 --- a/specification/netapp/resource-manager/readme.md +++ b/specification/netapp/resource-manager/readme.md @@ -160,29 +160,6 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.NetApp/stable/2020-06-01/netapp.json - - $(this-folder)/Microsoft.NetApp/stable/2020-02-01/netapp.json - - $(this-folder)/Microsoft.NetApp/stable/2019-11-01/netapp.json - - $(this-folder)/Microsoft.NetApp/stable/2019-10-01/netapp.json - - $(this-folder)/Microsoft.NetApp/stable/2019-08-01/netapp.json - - $(this-folder)/Microsoft.NetApp/stable/2019-07-01/netapp.json - - $(this-folder)/Microsoft.NetApp/stable/2019-06-01/netapp.json - - $(this-folder)/Microsoft.NetApp/stable/2019-05-01/netapp.json - - $(this-folder)/Microsoft.NetApp/preview/2017-08-15/netapp.json - -``` ## trenton These settings apply only when `--trenton` is specified on the command line. @@ -198,11 +175,3 @@ trenton: clear_output_folder: false ``` -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/network/resource-manager/readme.azureresourceschema.md b/specification/network/resource-manager/readme.azureresourceschema.md index 9b05f08c959c..6664e4a46a7b 100644 --- a/specification/network/resource-manager/readme.azureresourceschema.md +++ b/specification/network/resource-manager/readme.azureresourceschema.md @@ -152,6 +152,7 @@ input-file: - Microsoft.Network/stable/2020-05-01/virtualWan.json - Microsoft.Network/stable/2020-05-01/vmssNetworkInterface.json - Microsoft.Network/stable/2020-05-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2020-05-01/webapplicationfirewall.json ``` diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index 5211d0e3ddac..f0097e2c0d0e 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -1685,948 +1685,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Network/stable/2020-06-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/availableServiceAliases.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/customIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/dscpConfiguration.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/ipAllocation.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/ipGroups.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/network.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/networkVirtualAppliance.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/securityPartnerProvider.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/virtualRouter.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2020-06-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/availableServiceAliases.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/ipAllocation.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/ipGroups.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/network.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkVirtualAppliance.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/securityPartnerProvider.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualRouter.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2020-05-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/availableServiceAliases.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/ipAllocation.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/ipGroups.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/network.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkVirtualAppliance.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/securityPartnerProvider.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualRouter.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/availableServiceAliases.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/ipAllocation.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/ipGroups.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/network.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualRouter.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/availableServiceAliases.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/ipGroups.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualRouter.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/availableServiceAliases.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/ipGroups.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/virtualRouter.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-11-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/availableServiceAliases.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/ipGroups.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/networkWatcherConnectionMonitorV1.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualRouter.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-09-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/availableServiceAliases.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/networkWatcherConnectionMonitorV1.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/virtualRouter.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-08-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/networkWatcherConnectionMonitorV1.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualRouter.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-07-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/firewallPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-06-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/bastionHost.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/privateEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/privateLinkService.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/serviceTags.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-04-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/interfaceEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/natGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/network.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2019-02-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/interfaceEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/network.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-12-01/webapplicationfirewall.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/ddosCustomPolicy.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/interfaceEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/network.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-11-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/interfaceEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/network.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-10-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/availableDelegations.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/azureFirewallFqdnTag.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/expressRouteGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/expressRoutePort.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/interfaceEndpoint.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/network.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/networkProfile.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/virtualNetworkTap.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-08-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/network.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/publicIpPrefix.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-07-01/serviceEndpointPolicy.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/network.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-06-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/azureFirewall.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/network.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/virtualWan.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-04-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/ddosProtectionPlan.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/expressRouteCrossConnection.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/network.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/network.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2018-01-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/network.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-11-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/network.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-10-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/applicationSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/network.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/operation.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-09-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/network.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-08-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/endpointService.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/network.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-06-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/network.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/vmssPublicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/network.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/routeFilter.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/serviceCommunity.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2016-12-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/network.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/networkWatcher.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/usage.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2016-09-01/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2016-06-01/network.json - - $(this-folder)/Microsoft.Network/stable/2016-03-30/network.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/applicationGateway.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/checkDnsAvailability.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/expressRouteCircuit.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/loadBalancer.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/network.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/networkInterface.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/networkSecurityGroup.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/publicIpAddress.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/routeTable.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/usage.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/virtualNetwork.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/virtualNetworkGateway.json - - $(this-folder)/Microsoft.Network/stable/2015-06-15/vmssNetworkInterface.json - - $(this-folder)/Microsoft.Network/preview/2015-05-01-preview/network.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/notificationhubs/resource-manager/readme.md b/specification/notificationhubs/resource-manager/readme.md index ca971fb4f0ce..799fd3c01789 100644 --- a/specification/notificationhubs/resource-manager/readme.md +++ b/specification/notificationhubs/resource-manager/readme.md @@ -213,29 +213,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.NotificationHubs/stable/2017-04-01/notificationhubs.json - - $(this-folder)/Microsoft.NotificationHubs/stable/2016-03-01/notificationhubs.json - - $(this-folder)/Microsoft.NotificationHubs/stable/2014-09-01/notificationhubs.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/operationalinsights/resource-manager/readme.md b/specification/operationalinsights/resource-manager/readme.md index 694b89a767e1..002899d9fe81 100644 --- a/specification/operationalinsights/resource-manager/readme.md +++ b/specification/operationalinsights/resource-manager/readme.md @@ -218,71 +218,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataCollectorLogs.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json - - $(this-folder)/Microsoft.OperationalInsights/preview/2020-03-01-preview/Tables.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/DataExports.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/DataSources.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/IntelligencePacks.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/LinkedServices.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/LinkedStorageAccounts.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/ManagementGroups.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/Operations.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/OperationStatuses.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/SharedKeys.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/Usages.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/Workspaces.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/Clusters.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/StorageInsightConfigs.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/SavedSearches.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/AvailableServiceTiers.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/Gateways.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/Schema.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/WorkspacePurge.json - - $(this-folder)/Microsoft.OperationalInsights/stable/2020-08-01/Tables.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/operationsmanagement/resource-manager/readme.md b/specification/operationsmanagement/resource-manager/readme.md index 01dba6923780..f4f947c62ed6 100644 --- a/specification/operationsmanagement/resource-manager/readme.md +++ b/specification/operationsmanagement/resource-manager/readme.md @@ -129,27 +129,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.OperationsManagement/preview/2015-11-01-preview/OperationsManagement.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/peering/resource-manager/readme.md b/specification/peering/resource-manager/readme.md index d615f9f5d5ec..6b7fc65c805f 100644 --- a/specification/peering/resource-manager/readme.md +++ b/specification/peering/resource-manager/readme.md @@ -126,29 +126,3 @@ See configuration in [readme.cli.md](./readme.cli.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Peering/stable/2020-04-01/peering.json - - $(this-folder)/Microsoft.Peering/preview/2020-01-01-preview/peering.json - - $(this-folder)/Microsoft.Peering/preview/2019-09-01-preview/peering.json - - $(this-folder)/Microsoft.Peering/preview/2019-08-01-preview/peering.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -# exclude-file: -#- $(this-folder)/Microsoft.Peering/preview/2019-06-01-preview/peering.json -``` diff --git a/specification/policyinsights/resource-manager/readme.md b/specification/policyinsights/resource-manager/readme.md index c6dcf11c08eb..f347aea242be 100644 --- a/specification/policyinsights/resource-manager/readme.md +++ b/specification/policyinsights/resource-manager/readme.md @@ -241,36 +241,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/policyTrackedResources.json - - $(this-folder)/Microsoft.PolicyInsights/stable/2019-07-01/remediations.json - - $(this-folder)/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json - - $(this-folder)/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json - - $(this-folder)/Microsoft.PolicyInsights/stable/2019-10-01/policyMetadata.json - - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/remediations.json - - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/policyEvents.json - - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/policyStates.json - - $(this-folder)/Microsoft.PolicyInsights/stable/2018-04-04/policyEvents.json - - $(this-folder)/Microsoft.PolicyInsights/stable/2018-04-04/policyStates.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/portal/resource-manager/readme.azureresourceschema.md b/specification/portal/resource-manager/readme.azureresourceschema.md index 6667c9568420..fffdb3030891 100644 --- a/specification/portal/resource-manager/readme.azureresourceschema.md +++ b/specification/portal/resource-manager/readme.azureresourceschema.md @@ -6,6 +6,7 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-portal-2020-09-01-preview - tag: schema-portal-2019-01-01-preview - tag: schema-portal-2018-10-01-preview - tag: schema-portal-2015-08-01-preview @@ -14,6 +15,18 @@ batch: Please also specify `--azureresourceschema-folder=`. +### Tag: schema-portal-2020-09-01-preview and azureresourceschema + +``` yaml $(tag) == 'schema-portal-2020-09-01-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.Portal/preview/2020-09-01-preview/portal.json + - Microsoft.Portal/preview/2020-09-01-preview/tenantConfiguration.json + +``` + ### Tag: schema-portal-2019-01-01-preview and azureresourceschema ``` yaml $(tag) == 'schema-portal-2019-01-01-preview' && $(azureresourceschema) @@ -22,6 +35,7 @@ output-folder: $(azureresourceschema-folder)/schemas # all the input files in this apiVersion input-file: - Microsoft.Portal/preview/2019-01-01-preview/portal.json + - Microsoft.Portal/preview/2019-01-01-preview/tenantConfiguration.json ``` diff --git a/specification/portal/resource-manager/readme.md b/specification/portal/resource-manager/readme.md index 1feda99144f3..fdcd1c9aa704 100644 --- a/specification/portal/resource-manager/readme.md +++ b/specification/portal/resource-manager/readme.md @@ -120,29 +120,3 @@ See configuration in [readme.nodejs.md](./readme.nodejs.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Portal/preview/2019-01-01-preview/portal.json - - $(this-folder)/Microsoft.Portal/preview/2019-01-01-preview/tenantConfiguration.json - - $(this-folder)/Microsoft.Portal/preview/2018-10-01-preview/portal.json - - $(this-folder)/Microsoft.Portal/preview/2015-08-01-preview/portal.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/postgresql/resource-manager/readme.md b/specification/postgresql/resource-manager/readme.md index 8f4c2a2300e7..583f1c230d97 100644 --- a/specification/postgresql/resource-manager/readme.md +++ b/specification/postgresql/resource-manager/readme.md @@ -174,35 +174,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2020-02-14-privatepreview/postgresql.json - - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2020-01-01-privatepreview/DataEncryptionKeys.json - - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json - - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2017-12-01/ServerSecurityAlertPolicies.json - - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json - - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json - - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json - - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2018-06-01-privatepreview/PrivateEndpointConnections.json - - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2018-06-01-privatepreview/PrivateLinkResources.json - - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/powerbidedicated/resource-manager/readme.md b/specification/powerbidedicated/resource-manager/readme.md index ce7861a7f87a..84b2d74562ab 100644 --- a/specification/powerbidedicated/resource-manager/readme.md +++ b/specification/powerbidedicated/resource-manager/readme.md @@ -122,27 +122,3 @@ See configuration in [readme.python.md](./readme.python.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.PowerBIdedicated/stable/2017-10-01/powerbidedicated.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/powerbiembedded/resource-manager/readme.md b/specification/powerbiembedded/resource-manager/readme.md index ec04459cdfa5..58f6019c622f 100644 --- a/specification/powerbiembedded/resource-manager/readme.md +++ b/specification/powerbiembedded/resource-manager/readme.md @@ -120,27 +120,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.PowerBI/stable/2016-01-29/powerbiembedded.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/powerplatform/resource-manager/readme.azureresourceschema.md b/specification/powerplatform/resource-manager/readme.azureresourceschema.md new file mode 100644 index 000000000000..64638bcc3540 --- /dev/null +++ b/specification/powerplatform/resource-manager/readme.azureresourceschema.md @@ -0,0 +1,27 @@ +## AzureResourceSchema + +These settings apply only when `--azureresourceschema` is specified on the command line. + +### AzureResourceSchema multi-api + +``` yaml $(azureresourceschema) && $(multiapi) +batch: + - tag: schema-powerplatform-2020-10-30-preview + +``` + +Please also specify `--azureresourceschema-folder=`. + +### Tag: schema-powerplatform-2020-10-30-preview and azureresourceschema + +``` yaml $(tag) == 'schema-powerplatform-2020-10-30-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.PowerPlatform/preview/2020-10-30-preview/enterprisePolicy.json + - Microsoft.PowerPlatform/preview/2020-10-30-preview/privateEndpointConnection.json + - Microsoft.PowerPlatform/preview/2020-10-30-preview/privateLinkResources.json + - Microsoft.PowerPlatform/preview/2020-10-30-preview/subnetResources.json + +``` diff --git a/specification/privatedns/resource-manager/readme.md b/specification/privatedns/resource-manager/readme.md index 903eec7e021a..8b094cceacfc 100644 --- a/specification/privatedns/resource-manager/readme.md +++ b/specification/privatedns/resource-manager/readme.md @@ -142,27 +142,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Network/stable/2018-09-01/privatedns.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/recoveryservices/resource-manager/readme.md b/specification/recoveryservices/resource-manager/readme.md index cc9d01439c78..8beb9220bec3 100644 --- a/specification/recoveryservices/resource-manager/readme.md +++ b/specification/recoveryservices/resource-manager/readme.md @@ -139,30 +139,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.RecoveryServices/stable/2016-06-01/registeredidentities.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2016-06-01/replicationusages.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2016-06-01/vaults.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2016-06-01/vaultusages.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/recoveryservicesbackup/resource-manager/readme.md b/specification/recoveryservicesbackup/resource-manager/readme.md index e52138ea1368..31a1b9b4d5c3 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.md @@ -199,35 +199,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.RecoveryServices/stable/2020-07-01/bms.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2020-02-02/bms.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2019-06-15/bms.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2017-07-01/bms.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2016-12-01/bms.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2016-08-10/operations.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2019-05-13/bms.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2018-12-20/bms.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2016-06-01/recoveryservicesbackup.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2016-06-01/registeredIdentities.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/recoveryservicessiterecovery/resource-manager/readme.md b/specification/recoveryservicessiterecovery/resource-manager/readme.md index 60c7cabd6ef9..4433d2f58926 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/readme.md +++ b/specification/recoveryservicessiterecovery/resource-manager/readme.md @@ -133,29 +133,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.RecoveryServices/stable/2018-07-10/service.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2018-01-10/service.json - - $(this-folder)/Microsoft.RecoveryServices/stable/2016-08-10/service.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/redhatopenshift/resource-manager/readme.md b/specification/redhatopenshift/resource-manager/readme.md index 20385174823d..291be7e51d7c 100644 --- a/specification/redhatopenshift/resource-manager/readme.md +++ b/specification/redhatopenshift/resource-manager/readme.md @@ -70,27 +70,3 @@ See configuration in [readme.python.md](./readme.python.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/redis/resource-manager/readme.md b/specification/redis/resource-manager/readme.md index 613436c70985..305b826967ce 100644 --- a/specification/redis/resource-manager/readme.md +++ b/specification/redis/resource-manager/readme.md @@ -240,31 +240,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Cache/preview/2019-07-01/redis.json - - $(this-folder)/Microsoft.Cache/stable/2018-03-01/redis.json - - $(this-folder)/Microsoft.Cache/stable/2017-10-01/redis.json - - $(this-folder)/Microsoft.Cache/stable/2017-02-01/redis.json - - $(this-folder)/Microsoft.Cache/stable/2016-04-01/redis.json - - $(this-folder)/Microsoft.Cache/stable/2015-08-01/redis.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/regionmove/resource-manager/readme.md b/specification/regionmove/resource-manager/readme.md index 66399702cbaf..3cd4a59bfc1b 100644 --- a/specification/regionmove/resource-manager/readme.md +++ b/specification/regionmove/resource-manager/readme.md @@ -87,21 +87,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. -This block is updated by an automatic script. Edits may be lost! -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json - -``` -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/relay/resource-manager/readme.md b/specification/relay/resource-manager/readme.md index 4c3b20f2e598..79c4ab022296 100644 --- a/specification/relay/resource-manager/readme.md +++ b/specification/relay/resource-manager/readme.md @@ -161,32 +161,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Relay/stable/2017-04-01/relay.json - - $(this-folder)/Microsoft.Relay/stable/2016-07-01/relay.json - - $(this-folder)/Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json - - $(this-folder)/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json - - $(this-folder)/Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json - - $(this-folder)/Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/reservations/resource-manager/readme.md b/specification/reservations/resource-manager/readme.md index cb647040360f..66a5dd8d25f3 100644 --- a/specification/reservations/resource-manager/readme.md +++ b/specification/reservations/resource-manager/readme.md @@ -138,30 +138,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Capacity/preview/2019-07-19/quota.json - - $(this-folder)/Microsoft.Capacity/preview/2019-04-01/reservations.json - - $(this-folder)/Microsoft.Capacity/preview/2018-06-01/reservations.json - - $(this-folder)/Microsoft.Capacity/stable/2017-11-01/reservations.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/resourcegraph/resource-manager/readme.md b/specification/resourcegraph/resource-manager/readme.md index dcf2839d8782..e0c9a9cb572f 100644 --- a/specification/resourcegraph/resource-manager/readme.md +++ b/specification/resourcegraph/resource-manager/readme.md @@ -136,33 +136,6 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ResourceGraph/preview/2020-04-01-preview/resourcegraph.json - - $(this-folder)/Microsoft.ResourceGraph/stable/2019-04-01/resourcegraph.json - - $(this-folder)/Microsoft.ResourceGraph/preview/2018-09-01-preview/resourcegraph.json - - $(this-folder)/Microsoft.ResourceGraph/preview/2018-09-01-preview/graphquery.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - ## cli These settings apply only when `--cli` is specified on the command line. diff --git a/specification/resourcehealth/resource-manager/readme.md b/specification/resourcehealth/resource-manager/readme.md index 3982a6e8ec3d..cb06b5ae582d 100644 --- a/specification/resourcehealth/resource-manager/readme.md +++ b/specification/resourcehealth/resource-manager/readme.md @@ -176,30 +176,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ResourceHealth/stable/2017-07-01/resourcehealth.json - - $(this-folder)/Microsoft.ResourceHealth/stable/2015-01-01/resourcehealth.json - - $(this-folder)/Microsoft.ResourceHealth/preview/2018-08-01/ResourceHealth.json - - $(this-folder)/Microsoft.ResourceHealth/stable/2018-07-01/ResourceHealth.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/resources/resource-manager/readme.azureresourceschema.md b/specification/resources/resource-manager/readme.azureresourceschema.md index 184386348e3a..a25e134279c2 100644 --- a/specification/resources/resource-manager/readme.azureresourceschema.md +++ b/specification/resources/resource-manager/readme.azureresourceschema.md @@ -11,6 +11,7 @@ batch: - tag: schema-solutions-2018-06-01 - tag: schema-solutions-2017-09-01 - tag: schema-solutions-2016-09-01-preview + - tag: schema-resources-2020-10-01 - tag: schema-resources-2020-06-01 - tag: schema-resources-2020-01-01 - tag: schema-resources-2019-11-01 @@ -33,6 +34,7 @@ batch: - tag: schema-resources-2016-02-01 - tag: schema-resources-2015-11-01 - tag: schema-features-2015-12-01 + - tag: schema-authorization-2020-07-01-preview - tag: schema-authorization-2020-03-01 - tag: schema-authorization-2019-09-01 - tag: schema-authorization-2019-06-01 @@ -105,6 +107,17 @@ input-file: ``` +### Tag: schema-resources-2020-10-01 and azureresourceschema + +``` yaml $(tag) == 'schema-resources-2020-10-01' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.Resources/stable/2020-10-01/deploymentScripts.json + +``` + ### Tag: schema-resources-2020-06-01 and azureresourceschema ``` yaml $(tag) == 'schema-resources-2020-06-01' && $(azureresourceschema) @@ -349,6 +362,17 @@ input-file: ``` +### Tag: schema-authorization-2020-07-01-preview and azureresourceschema + +``` yaml $(tag) == 'schema-authorization-2020-07-01-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.Authorization/preview/2020-07-01-preview/policyExemptions.json + +``` + ### Tag: schema-authorization-2020-03-01 and azureresourceschema ``` yaml $(tag) == 'schema-authorization-2020-03-01' && $(azureresourceschema) diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 1aeb07ca5d22..4a866de90b49 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -719,82 +719,3 @@ override-info: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Solutions/preview/2020-08-21-preview/managedapplications.json - - $(this-folder)/Microsoft.Resources/stable/2020-06-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2020-01-01/subscriptions.json - - $(this-folder)/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json - - $(this-folder)/Microsoft.Resources/stable/2020-10-01/deploymentScripts.json - - $(this-folder)/Microsoft.Features/stable/2015-12-01/features.json - - $(this-folder)/Microsoft.Authorization/stable/2016-09-01/locks.json - - $(this-folder)/Microsoft.Authorization/stable/2015-01-01/locks.json - - $(this-folder)/Microsoft.Authorization/preview/2020-07-01-preview/policyExemptions.json - - $(this-folder)/Microsoft.Authorization/stable/2020-03-01/policyAssignments.json - - $(this-folder)/Microsoft.Authorization/stable/2020-03-01/policyDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2020-03-01/policySetDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2019-09-01/policyAssignments.json - - $(this-folder)/Microsoft.Authorization/stable/2019-09-01/policyDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2019-09-01/policySetDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2019-06-01/policyAssignments.json - - $(this-folder)/Microsoft.Authorization/stable/2019-06-01/policyDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2019-06-01/policySetDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2019-01-01/policyAssignments.json - - $(this-folder)/Microsoft.Authorization/stable/2019-01-01/policyDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2019-01-01/policySetDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2018-05-01/policyAssignments.json - - $(this-folder)/Microsoft.Authorization/stable/2018-05-01/policyDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2018-05-01/policySetDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2018-03-01/policyAssignments.json - - $(this-folder)/Microsoft.Authorization/stable/2018-03-01/policyDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2018-03-01/policySetDefinitions.json - - $(this-folder)/Microsoft.Authorization/preview/2017-06-01-preview/policyAssignments.json - - $(this-folder)/Microsoft.Authorization/preview/2017-06-01-preview/policySetDefinitions.json - - $(this-folder)/Microsoft.Authorization/stable/2016-12-01/policyDefinitions.json - - $(this-folder)/Microsoft.Resources/preview/2019-06-01-preview/templateSpecs.json - - $(this-folder)/Microsoft.Authorization/stable/2016-12-01/policyAssignments.json - - $(this-folder)/Microsoft.Authorization/stable/2016-04-01/policy.json - - $(this-folder)/Microsoft.Authorization/preview/2015-10-01-preview/policy.json - - $(this-folder)/Microsoft.Resources/stable/2019-10-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2019-08-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2019-07-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2019-05-10/resources.json - - $(this-folder)/Microsoft.Resources/stable/2019-05-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2019-03-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2018-05-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2018-02-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2017-05-10/resources.json - - $(this-folder)/Microsoft.Resources/stable/2016-09-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2016-07-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2016-02-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2015-11-01/resources.json - - $(this-folder)/Microsoft.Resources/stable/2019-11-01/subscriptions.json - - $(this-folder)/Microsoft.Resources/stable/2019-06-01/subscriptions.json - - $(this-folder)/Microsoft.Resources/stable/2018-06-01/subscriptions.json - - $(this-folder)/Microsoft.Resources/stable/2016-06-01/subscriptions.json - - $(this-folder)/Microsoft.Resources/stable/2015-11-01/subscriptions.json - - $(this-folder)/Microsoft.Resources/stable/2016-09-01/links.json - - $(this-folder)/Microsoft.Solutions/stable/2019-07-01/managedapplications.json - - $(this-folder)/Microsoft.Solutions/stable/2018-06-01/managedapplications.json - - $(this-folder)/Microsoft.Solutions/stable/2017-09-01/managedapplications.json - - $(this-folder)/Microsoft.Solutions/preview/2016-09-01-preview/managedapplications.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/scheduler/resource-manager/readme.md b/specification/scheduler/resource-manager/readme.md index b3783dfa1cdf..dd10e44abeea 100644 --- a/specification/scheduler/resource-manager/readme.md +++ b/specification/scheduler/resource-manager/readme.md @@ -195,29 +195,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Scheduler/stable/2016-03-01/scheduler.json - - $(this-folder)/Microsoft.Scheduler/stable/2016-01-01/scheduler.json - - $(this-folder)/Microsoft.Scheduler/preview/2014-08-01-preview/scheduler.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/search/resource-manager/readme.md b/specification/search/resource-manager/readme.md index 4341e33a2fe8..e4e7e9f0ebcc 100644 --- a/specification/search/resource-manager/readme.md +++ b/specification/search/resource-manager/readme.md @@ -207,32 +207,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Search/stable/2020-08-01/search.json - - $(this-folder)/Microsoft.Search/stable/2020-03-13/search.json - - $(this-folder)/Microsoft.Search/stable/2015-08-19/search.json - - $(this-folder)/Microsoft.Search/stable/2015-02-28/search.json - - $(this-folder)/Microsoft.Search/preview/2020-08-01-preview/search.json - - $(this-folder)/Microsoft.Search/preview/2019-10-01-preview/search.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/security/resource-manager/readme.md b/specification/security/resource-manager/readme.md index 175fa216254a..a05992d01aef 100644 --- a/specification/security/resource-manager/readme.md +++ b/specification/security/resource-manager/readme.md @@ -435,83 +435,3 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - - -``` yaml $(tag) == 'all-api-versions' /*autogenerated*/ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Security/preview/2020-08-06-preview/iotDefenderSettings.json - - $(this-folder)/Microsoft.Security/preview/2020-08-06-preview/iotSensors.json - - $(this-folder)/Microsoft.Security/preview/2020-01-01-preview/secureScore.json - - $(this-folder)/Microsoft.Security/preview/2020-01-01-preview/connectors.json - - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/automations.json - - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/subAssessments.json - - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/pricings.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/securityContacts.json - - $(this-folder)/Microsoft.Security/preview/2020-01-01-preview/securityContacts.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/workspaceSettings.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/compliances.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/deviceSecurityGroups.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/settings.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/operations.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/locations.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/tasks.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/alerts.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/topologies.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json - - $(this-folder)/Microsoft.Security/preview/2015-06-01-preview/adaptiveNetworkHardenings.json - - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/alertsSuppressionRules.json - - $(this-folder)/Microsoft.Security/stable/2018-06-01/pricings.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutions.json - - $(this-folder)/Microsoft.Security/preview/2017-08-01-preview/iotSecuritySolutionAnalytics.json - - $(this-folder)/Microsoft.Security/stable/2017-08-01/complianceResults.json - - $(this-folder)/Microsoft.Security/stable/2019-01-01/settings.json - - $(this-folder)/Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json - - $(this-folder)/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json - - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json - - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json - - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotAlertTypes.json - - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotAlerts.json - - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotRecommendationTypes.json - - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotRecommendations.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/serverVulnerabilityAssessments.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/assessments.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/applicationWhitelistings.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/allowedConnections.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/topologies.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/alerts.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/discoveredSecuritySolutions.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/securitySolutionsReferenceData.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/SecuritySolutions.json - - $(this-folder)/Microsoft.Security/stable/2020-01-01/externalSecuritySolutions.json - - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json - - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/assessments.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/securityinsights/resource-manager/readme.md b/specification/securityinsights/resource-manager/readme.md index a0f8dae7ca0e..e9bf77101153 100644 --- a/specification/securityinsights/resource-manager/readme.md +++ b/specification/securityinsights/resource-manager/readme.md @@ -117,28 +117,3 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.SecurityInsights/stable/2020-01-01/SecurityInsights.json - - $(this-folder)/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/serialconsole/resource-manager/readme.md b/specification/serialconsole/resource-manager/readme.md index eae19181721c..5d0c5c41e52b 100644 --- a/specification/serialconsole/resource-manager/readme.md +++ b/specification/serialconsole/resource-manager/readme.md @@ -71,27 +71,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.SerialConsole/stable/2018-05-01/serialconsole.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/service-map/resource-manager/readme.md b/specification/service-map/resource-manager/readme.md index 2842243d46fa..9050b2e25e2f 100644 --- a/specification/service-map/resource-manager/readme.md +++ b/specification/service-map/resource-manager/readme.md @@ -117,27 +117,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.OperationalInsights/preview/2015-11-01-preview/arm-service-map.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/servicebus/resource-manager/readme.azureresourceschema.md b/specification/servicebus/resource-manager/readme.azureresourceschema.md index 72a1c9f004ef..232b913f8313 100644 --- a/specification/servicebus/resource-manager/readme.azureresourceschema.md +++ b/specification/servicebus/resource-manager/readme.azureresourceschema.md @@ -42,15 +42,15 @@ input-file: - Microsoft.ServiceBus/stable/2017-04-01/eventhubs.json - Microsoft.ServiceBus/stable/2017-04-01/migrate.json - Microsoft.ServiceBus/stable/2017-04-01/migrationconfigs.json - - Microsoft.ServiceBus/stable/2017-04-01/namespaces.json - - Microsoft.ServiceBus/stable/2017-04-01/networksets.json - - Microsoft.ServiceBus/stable/2017-04-01/operations.json - Microsoft.ServiceBus/stable/2017-04-01/PremiumMessagingRegions.json - Microsoft.ServiceBus/stable/2017-04-01/Queue.json - - Microsoft.ServiceBus/stable/2017-04-01/Rules.json - Microsoft.ServiceBus/stable/2017-04-01/sku.json - Microsoft.ServiceBus/stable/2017-04-01/subscriptions.json - Microsoft.ServiceBus/stable/2017-04-01/topics.json + - Microsoft.ServiceBus/stable/2017-04-01/Rules.json + - Microsoft.ServiceBus/stable/2017-04-01/namespaces.json + - Microsoft.ServiceBus/stable/2017-04-01/networksets.json + - Microsoft.ServiceBus/stable/2017-04-01/operations.json ``` diff --git a/specification/servicebus/resource-manager/readme.md b/specification/servicebus/resource-manager/readme.md index 83e7741ca82d..c9f4f4f4e15c 100644 --- a/specification/servicebus/resource-manager/readme.md +++ b/specification/servicebus/resource-manager/readme.md @@ -172,45 +172,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ServiceBus/stable/2015-08-01/servicebus.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/AuthorizationRules.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/CheckNameAvailability.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/DisasterRecoveryConfig.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/eventhubs.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/migrate.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/migrationconfigs.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/namespaces.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/networksets.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/operations.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/PremiumMessagingRegions.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/Queue.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/Rules.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/sku.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/subscriptions.json - - $(this-folder)/Microsoft.ServiceBus/stable/2017-04-01/topics.json - - $(this-folder)/Microsoft.ServiceBus/preview/2018-01-01-preview/IPFilterRules-preview.json - - $(this-folder)/Microsoft.ServiceBus/preview/2018-01-01-preview/namespace-preview.json - - $(this-folder)/Microsoft.ServiceBus/preview/2018-01-01-preview/NetworkRuleSet-preview.json - - $(this-folder)/Microsoft.ServiceBus/preview/2018-01-01-preview/VirtualNetworkRules-preview.json -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/servicefabric/resource-manager/readme.md b/specification/servicefabric/resource-manager/readme.md index e24cf39fd1ba..bd3ee3d8b412 100644 --- a/specification/servicefabric/resource-manager/readme.md +++ b/specification/servicefabric/resource-manager/readme.md @@ -212,42 +212,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json - - $(this-folder)/Microsoft.ServiceFabric/stable/2020-03-01/application.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2020-01-01-preview/managedcluster.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2020-01-01-preview/nodetype.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2019-06-01-preview/application.json - - $(this-folder)/Microsoft.ServiceFabric/stable/2019-03-01/cluster.json - - $(this-folder)/Microsoft.ServiceFabric/stable/2019-03-01/application.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2019-03-01-preview/cluster.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2019-03-01-preview/application.json - - $(this-folder)/Microsoft.ServiceFabric/stable/2018-02-01/cluster.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2017-07-01-preview/application.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2017-07-01-preview/servicefabric.json - - $(this-folder)/Microsoft.ServiceFabric/stable/2016-09-01/servicefabric.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/servicefabricmesh/resource-manager/readme.md b/specification/servicefabricmesh/resource-manager/readme.md index 581ecfa00519..4112c128faf2 100644 --- a/specification/servicefabricmesh/resource-manager/readme.md +++ b/specification/servicefabricmesh/resource-manager/readme.md @@ -176,28 +176,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/servicefabricmesh.json - - $(this-folder)/Microsoft.ServiceFabricMesh/preview/2018-07-01-preview/servicefabricmesh.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/signalr/resource-manager/readme.md b/specification/signalr/resource-manager/readme.md index c37310f908d6..1c60fa5764f6 100644 --- a/specification/signalr/resource-manager/readme.md +++ b/specification/signalr/resource-manager/readme.md @@ -144,30 +144,3 @@ csharp: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.SignalRService/preview/2020-07-01-preview/signalr.json - - $(this-folder)/Microsoft.SignalRService/stable/2020-05-01/signalr.json - - $(this-folder)/Microsoft.SignalRService/stable/2018-10-01/signalr.json - - $(this-folder)/Microsoft.SignalRService/preview/2018-03-01-preview/signalr.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/softwareplan/resource-manager/readme.md b/specification/softwareplan/resource-manager/readme.md index 632a0a67548b..f6933c2ae568 100644 --- a/specification/softwareplan/resource-manager/readme.md +++ b/specification/softwareplan/resource-manager/readme.md @@ -110,28 +110,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.SoftwarePlan/preview/2019-06-01-preview/softwareplan.json - - $(this-folder)/Microsoft.SoftwarePlan/stable/2019-12-01/softwareplan.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/sql/resource-manager/readme.azureresourceschema.md b/specification/sql/resource-manager/readme.azureresourceschema.md index b6beef658200..8f7212bea7af 100644 --- a/specification/sql/resource-manager/readme.azureresourceschema.md +++ b/specification/sql/resource-manager/readme.azureresourceschema.md @@ -6,6 +6,7 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-sql-2020-08-01-preview - tag: schema-sql-2020-02-02-preview - tag: schema-sql-2019-06-01-preview - tag: schema-sql-2018-06-01-preview @@ -19,6 +20,18 @@ batch: Please also specify `--azureresourceschema-folder=`. +### Tag: schema-sql-2020-08-01-preview and azureresourceschema + +``` yaml $(tag) == 'schema-sql-2020-08-01-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - ./Microsoft.Sql/preview/2020-08-01-preview/databases.json + - ./Microsoft.Sql/preview/2020-08-01-preview/elasticPools.json + +``` + ### Tag: schema-sql-2020-02-02-preview and azureresourceschema ``` yaml $(tag) == 'schema-sql-2020-02-02-preview' && $(azureresourceschema) @@ -32,6 +45,7 @@ input-file: - Microsoft.Sql/preview/2020-02-02-preview/managedInstances.json - Microsoft.Sql/preview/2020-02-02-preview/importexport.json - Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAzureADOnlyAuthentications.json + - Microsoft.Sql/preview/2020-02-02-preview/ServerTrustGroups.json - ./Microsoft.Sql/preview/2020-02-02-preview/DatabaseSecurityAlertPolicies.json - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedServerSecurityAlertPolicies.json - ./Microsoft.Sql/preview/2020-02-02-preview/ServerSecurityAlertPolicies.json @@ -40,6 +54,7 @@ input-file: - ./Microsoft.Sql/preview/2020-02-02-preview/managedInstances.json - ./Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json - ./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAzureADOnlyAuthentications.json + - ./Microsoft.Sql/preview/2020-02-02-preview/ServerTrustGroups.json ``` @@ -50,6 +65,7 @@ output-folder: $(azureresourceschema-folder)/schemas # all the input files in this apiVersion input-file: + - Microsoft.Sql/preview/2019-06-01-preview/databases.json - Microsoft.Sql/preview/2019-06-01-preview/servers.json - Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json - Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json @@ -84,13 +100,13 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/managedDatabaseSensitivityLabels.json - Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - Microsoft.Sql/preview/2018-06-01-preview/usages.json - - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json - Microsoft.Sql/preview/2018-06-01-preview/capabilities.json - Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json - Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json + - Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - ./Microsoft.Sql/preview/2018-06-01-preview/DatabaseSecurityAlertPolicies.json - ./Microsoft.Sql/preview/2018-06-01-preview/managedDatabaseSensitivityLabels.json - ./Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json @@ -118,7 +134,6 @@ output-folder: $(azureresourceschema-folder)/schemas input-file: - Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json - Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json - - Microsoft.Sql/preview/2017-10-01-preview/databases.json - Microsoft.Sql/preview/2017-10-01-preview/elasticPools.json - Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json - Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssesmentRuleBaselines.json diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index 0682ecf919c1..507c3ad8420a 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -849,236 +849,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/backups.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/connectionPolicies.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/databaseSecurityAlertPolicies.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/dataMasking.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/firewallRules.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/geoBackupPolicies.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/metrics.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/recommendedElasticPoolsDecoupled.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/replicationLinks.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/serverCommunicationLinks.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/serviceObjectives.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/sql.core.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/usages.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/databaseAutomaticTuning.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/failoverGroups.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/operations.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/serverKeys.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/syncAgents.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/usages.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/virtualclusters.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/virtualNetworkRules.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessmentBaselines.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/jobs.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/serverDnsAliases.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/serverSecurityAlertPolicies.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/restorableDroppedManagedDatabases.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/ManagedDatabaseSecurityAlertPolicies.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/ManagedServerSecurityAlertPolicy.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/SensitivityLabels.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/managedInstanceAdministrators.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/databases.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/elasticPools.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssesmentRuleBaselines.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessmentScans.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessments.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/instanceFailoverGroups.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/TdeCertificates.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceTdeCertificates.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceKeys.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/recoverableManagedDatabases.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/ServerVulnerabilityAssessments.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/managedDatabaseSensitivityLabels.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/usages.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/PrivateLinkResources.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/servers.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/capabilities.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/FailoverManagedInstance.json - - $(this-folder)/Microsoft.Sql/preview/2020-02-02-preview/shortTermRetentionPolicies.json - - $(this-folder)/Microsoft.Sql/preview/2020-02-02-preview/managedDatabases.json - - $(this-folder)/Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json - - $(this-folder)/Microsoft.Sql/preview/2020-02-02-preview/managedInstances.json - - $(this-folder)/Microsoft.Sql/preview/2020-02-02-preview/importexport.json - - $(this-folder)/Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAzureADOnlyAuthentications.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/capabilities.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/databases.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/elasticPools.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/importExport.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/recommendedElasticPools.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - - $(this-folder)/Microsoft.Sql/preview/2017-10-01-preview/shortTermRetentionPolicies.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/checkNameAvailability.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/serverAzureADAdministrators.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/servers.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/syncGroups.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/syncMembers.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json - - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - - $(this-folder)/Microsoft.Sql/stable/2014-04-01/restorePoints.json - - $(this-folder)/Microsoft.Sql/stable/2015-05-01/capabilities.json - - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json - - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/DatabaseSecurityAlertPolicies.json - - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/ManagedServerSecurityAlertPolicies.json - - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/ServerSecurityAlertPolicies.json - - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/operations.json - - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/managedDatabases.json - - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/managedInstances.json - - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json - - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/ManagedInstanceAzureADOnlyAuthentications.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/databases.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/serverOperations.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/servers.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json - - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/FailoverManagedInstance.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/DatabaseSecurityAlertPolicies.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/managedDatabaseSensitivityLabels.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/managedInstanceOperations.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/ServerVulnerabilityAssessments.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/instancePools.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/usages.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/FailoverDatabases.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/FailoverElasticPools.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/PrivateEndpointConnections.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/ServerAzureADAdministrators.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json - - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/cancelOperations.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/cancelPoolOperations.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssesmentRuleBaselines.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessmentScans.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessments.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/capabilities.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/databases.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/elasticPools.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/instanceFailoverGroups.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/shortTermRetentionPolicies.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/TdeCertificates.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceTdeCertificates.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceKeys.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json - - $(this-folder)/./Microsoft.Sql/preview/2017-10-01-preview/recoverableManagedDatabases.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/databases.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessmentBaselines.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/jobs.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/restorableDroppedManagedDatabases.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/serverDnsAliases.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/serverSecurityAlertPolicies.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/ManagedDatabaseSecurityAlertPolicies.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/ManagedServerSecurityAlertPolicy.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/SensitivityLabels.json - - $(this-folder)/./Microsoft.Sql/preview/2017-03-01-preview/managedInstanceAdministrators.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/advisors.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/databaseAutomaticTuning.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/encryptionProtectors.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/failoverGroups.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/firewallRules.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/operations.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/serverKeys.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/servers.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/syncAgents.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/syncGroups.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/syncMembers.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/usages.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/virtualclusters.json - - $(this-folder)/./Microsoft.Sql/preview/2015-05-01-preview/virtualNetworkRules.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/advisors.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/backups.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/capabilities.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/checkNameAvailability.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/connectionPolicies.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/databases.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/databaseSecurityAlertPolicies.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/dataMasking.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/deprecated.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/disasterRecoveryConfigurations.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/elasticPools.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/firewallRules.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/geoBackupPolicies.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/importExport.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/metrics.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/operations.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/queries.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/recommendedElasticPools.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/replicationLinks.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/restorePoints.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/serverAzureADAdministrators.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/serverCommunicationLinks.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/servers.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/serviceObjectives.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/sql.core.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/tableAuditing.json - - $(this-folder)/./Microsoft.Sql/stable/2014-04-01/usages.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/sqlvirtualmachine/resource-manager/readme.md b/specification/sqlvirtualmachine/resource-manager/readme.md index 9781c1145ebb..2f795d6ed01d 100644 --- a/specification/sqlvirtualmachine/resource-manager/readme.md +++ b/specification/sqlvirtualmachine/resource-manager/readme.md @@ -118,27 +118,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/storSimple1200Series/resource-manager/readme.md b/specification/storSimple1200Series/resource-manager/readme.md index 29f85866a59d..be1de214a05b 100644 --- a/specification/storSimple1200Series/resource-manager/readme.md +++ b/specification/storSimple1200Series/resource-manager/readme.md @@ -104,27 +104,3 @@ java: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.StorSimple/stable/2016-10-01/StorSimple.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/storage/resource-manager/readme.md b/specification/storage/resource-manager/readme.md index 4f58f5579193..eb7b621c27fa 100644 --- a/specification/storage/resource-manager/readme.md +++ b/specification/storage/resource-manager/readme.md @@ -319,55 +319,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Storage/preview/2020-08-01-preview/storage.json - - $(this-folder)/Microsoft.Storage/preview/2020-08-01-preview/blob.json - - $(this-folder)/Microsoft.Storage/preview/2020-08-01-preview/file.json - - $(this-folder)/Microsoft.Storage/preview/2020-08-01-preview/queue.json - - $(this-folder)/Microsoft.Storage/preview/2020-08-01-preview/table.json - - $(this-folder)/Microsoft.Storage/stable/2019-06-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2019-06-01/blob.json - - $(this-folder)/Microsoft.Storage/stable/2019-06-01/file.json - - $(this-folder)/Microsoft.Storage/stable/2019-06-01/queue.json - - $(this-folder)/Microsoft.Storage/stable/2019-06-01/table.json - - $(this-folder)/Microsoft.Storage/stable/2019-04-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2019-04-01/blob.json - - $(this-folder)/Microsoft.Storage/stable/2019-04-01/file.json - - $(this-folder)/Microsoft.Storage/stable/2018-11-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2018-11-01/blob.json - - $(this-folder)/Microsoft.Storage/stable/2018-07-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2018-07-01/blob.json - - $(this-folder)/Microsoft.Storage/preview/2018-03-01-preview/managementpolicy.json - - $(this-folder)/Microsoft.Storage/preview/2018-03-01-preview/storage.json - - $(this-folder)/Microsoft.Storage/preview/2018-03-01-preview/blob.json - - $(this-folder)/Microsoft.Storage/stable/2018-02-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2018-02-01/blob.json - - $(this-folder)/Microsoft.Storage/stable/2017-10-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2017-06-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2016-12-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2016-05-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2016-01-01/storage.json - - $(this-folder)/Microsoft.Storage/stable/2015-06-15/storage.json - - $(this-folder)/Microsoft.Storage/preview/2015-05-01-preview/storage.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/storagecache/resource-manager/readme.md b/specification/storagecache/resource-manager/readme.md index 58658d33c0c5..f76c762192d0 100644 --- a/specification/storagecache/resource-manager/readme.md +++ b/specification/storagecache/resource-manager/readme.md @@ -106,29 +106,3 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.StorageCache/stable/2020-03-01/storagecache.json - - $(this-folder)/Microsoft.StorageCache/stable/2019-11-01/storagecache.json - - $(this-folder)/Microsoft.StorageCache/preview/2019-08-01-preview/storagecache.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/storageimportexport/resource-manager/readme.md b/specification/storageimportexport/resource-manager/readme.md index 95e38cf94944..7c5743419cc8 100644 --- a/specification/storageimportexport/resource-manager/readme.md +++ b/specification/storageimportexport/resource-manager/readme.md @@ -135,28 +135,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.ImportExport/stable/2016-11-01/storageimportexport.json - - $(this-folder)/Microsoft.ImportExport/stable/2020-08-01/storageimportexport.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/storagesync/resource-manager/readme.md b/specification/storagesync/resource-manager/readme.md index d104d90cdc22..efb6bc8c2b57 100644 --- a/specification/storagesync/resource-manager/readme.md +++ b/specification/storagesync/resource-manager/readme.md @@ -190,34 +190,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.StorageSync/stable/2020-03-01/storagesync.json - - $(this-folder)/Microsoft.StorageSync/stable/2019-10-01/storagesync.json - - $(this-folder)/Microsoft.StorageSync/stable/2019-06-01/storagesync.json - - $(this-folder)/Microsoft.StorageSync/stable/2019-03-01/storagesync.json - - $(this-folder)/Microsoft.StorageSync/stable/2019-02-01/storagesync.json - - $(this-folder)/Microsoft.StorageSync/stable/2018-10-01/storagesync.json - - $(this-folder)/Microsoft.StorageSync/stable/2018-07-01/storagesync.json - - $(this-folder)/Microsoft.StorageSync/stable/2018-04-02/storagesync.json - - $(this-folder)/Microsoft.StorageSync/preview/2017-06-05-preview/storagesync.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/storsimple8000series/resource-manager/readme.md b/specification/storsimple8000series/resource-manager/readme.md index 12c67125362b..f717e6b9e303 100644 --- a/specification/storsimple8000series/resource-manager/readme.md +++ b/specification/storsimple8000series/resource-manager/readme.md @@ -125,27 +125,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.StorSimple/stable/2017-06-01/storsimple.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/streamanalytics/resource-manager/readme.azureresourceschema.md b/specification/streamanalytics/resource-manager/readme.azureresourceschema.md index 66f93a4bf826..d144db4a64a1 100644 --- a/specification/streamanalytics/resource-manager/readme.azureresourceschema.md +++ b/specification/streamanalytics/resource-manager/readme.azureresourceschema.md @@ -6,12 +6,43 @@ These settings apply only when `--azureresourceschema` is specified on the comma ``` yaml $(azureresourceschema) && $(multiapi) batch: + - tag: schema-streamanalytics-2020-03-01-preview + - tag: schema-streamanalytics-2017-04-01-preview - tag: schema-streamanalytics-2016-03-01 ``` Please also specify `--azureresourceschema-folder=`. +### Tag: schema-streamanalytics-2020-03-01-preview and azureresourceschema + +``` yaml $(tag) == 'schema-streamanalytics-2020-03-01-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.StreamAnalytics/preview/2020-03-01-preview/clusters.json + - Microsoft.StreamAnalytics/preview/2020-03-01-preview/privateEndpoints.json + +``` + +### Tag: schema-streamanalytics-2017-04-01-preview and azureresourceschema + +``` yaml $(tag) == 'schema-streamanalytics-2017-04-01-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.StreamAnalytics/preview/2017-04-01-preview/functions.json + - Microsoft.StreamAnalytics/preview/2017-04-01-preview/inputs.json + - Microsoft.StreamAnalytics/preview/2017-04-01-preview/outputs.json + - Microsoft.StreamAnalytics/preview/2017-04-01-preview/streamingjobs.json + - Microsoft.StreamAnalytics/preview/2017-04-01-preview/subscriptions.json + - Microsoft.StreamAnalytics/preview/2017-04-01-preview/transformations.json + - Microsoft.StreamAnalytics/preview/2017-04-01-preview/operations.json + +``` + ### Tag: schema-streamanalytics-2016-03-01 and azureresourceschema ``` yaml $(tag) == 'schema-streamanalytics-2016-03-01' && $(azureresourceschema) diff --git a/specification/streamanalytics/resource-manager/readme.md b/specification/streamanalytics/resource-manager/readme.md index 6fd532ad2a32..9770af90a658 100644 --- a/specification/streamanalytics/resource-manager/readme.md +++ b/specification/streamanalytics/resource-manager/readme.md @@ -233,31 +233,3 @@ directive: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.StreamAnalytics/stable/2016-03-01/streamingjobs.json - - $(this-folder)/Microsoft.StreamAnalytics/stable/2016-03-01/inputs.json - - $(this-folder)/Microsoft.StreamAnalytics/stable/2016-03-01/outputs.json - - $(this-folder)/Microsoft.StreamAnalytics/stable/2016-03-01/transformations.json - - $(this-folder)/Microsoft.StreamAnalytics/stable/2016-03-01/functions.json - - $(this-folder)/Microsoft.StreamAnalytics/stable/2016-03-01/subscriptions.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/subscription/resource-manager/readme.md b/specification/subscription/resource-manager/readme.md index 88936dde8d2f..af2761560070 100644 --- a/specification/subscription/resource-manager/readme.md +++ b/specification/subscription/resource-manager/readme.md @@ -208,35 +208,3 @@ description: The subscription client See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Subscription/stable/2016-06-01/subscriptions.json - - $(this-folder)/Microsoft.Subscription/stable/2020-09-01/subscriptions.json - - $(this-folder)/Microsoft.Subscription/stable/2020-01-01/subscriptions.json - - $(this-folder)/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json - - $(this-folder)/Microsoft.Subscription/preview/2019-03-01-preview/subscriptions.json - - $(this-folder)/Microsoft.Subscription/preview/2018-11-01-preview/subscriptions.json - - $(this-folder)/Microsoft.Subscription/preview/2018-03-01-preview/subscriptions.json - - $(this-folder)/Microsoft.Subscription/preview/2018-03-01-preview/operations.json - - $(this-folder)/Microsoft.Subscription/preview/2017-11-01-preview/subscriptionDefinitions.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/support/resource-manager/readme.md b/specification/support/resource-manager/readme.md index 0cfd1d4d7776..9e1fbac31c0f 100644 --- a/specification/support/resource-manager/readme.md +++ b/specification/support/resource-manager/readme.md @@ -97,28 +97,3 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Support/stable/2020-04-01/support.json - - $(this-folder)/Microsoft.Support/preview/2019-05-01-preview/support.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/synapse/resource-manager/readme.md b/specification/synapse/resource-manager/readme.md index 43799498060f..68da597e5e27 100644 --- a/specification/synapse/resource-manager/readme.md +++ b/specification/synapse/resource-manager/readme.md @@ -128,38 +128,3 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/bigDataPool.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/checkNameAvailability.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/operations.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/workspace.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/privatelinkhub.json - - $(this-folder)/Microsoft.Synapse/preview/2020-04-01-preview/operations.json - - $(this-folder)/Microsoft.Synapse/preview/2020-04-01-preview/sqlPool.json - - $(this-folder)/Microsoft.Synapse/preview/2020-04-01-preview/sqlDatabase.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` diff --git a/specification/timeseriesinsights/resource-manager/readme.md b/specification/timeseriesinsights/resource-manager/readme.md index f8d60e6f88aa..6e5d24befcad 100644 --- a/specification/timeseriesinsights/resource-manager/readme.md +++ b/specification/timeseriesinsights/resource-manager/readme.md @@ -199,30 +199,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.TimeSeriesInsights/stable/2020-05-15/timeseriesinsights.json - - $(this-folder)/Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/timeseriesinsights.json - - $(this-folder)/Microsoft.TimeSeriesInsights/stable/2017-11-15/timeseriesinsights.json - - $(this-folder)/Microsoft.TimeSeriesInsights/preview/2017-02-28-preview/timeseriesinsights.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/trafficmanager/resource-manager/readme.md b/specification/trafficmanager/resource-manager/readme.md index 8df9cc48520b..2c955bdde8c6 100644 --- a/specification/trafficmanager/resource-manager/readme.md +++ b/specification/trafficmanager/resource-manager/readme.md @@ -253,33 +253,3 @@ java: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.Network/stable/2018-04-01/trafficmanager.json - - $(this-folder)/Microsoft.Network/stable/2018-03-01/trafficmanager.json - - $(this-folder)/Microsoft.Network/stable/2018-02-01/trafficmanager.json - - $(this-folder)/Microsoft.Network/preview/2017-09-01-preview/trafficmanageranalytics.json - - $(this-folder)/Microsoft.Network/stable/2017-05-01/trafficmanager.json - - $(this-folder)/Microsoft.Network/stable/2017-03-01/trafficmanager.json - - $(this-folder)/Microsoft.Network/stable/2015-11-01/trafficmanager.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/visualstudio/resource-manager/readme.md b/specification/visualstudio/resource-manager/readme.md index 11529a100cc2..c11e1701c524 100644 --- a/specification/visualstudio/resource-manager/readme.md +++ b/specification/visualstudio/resource-manager/readme.md @@ -109,27 +109,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.VisualStudio/preview/2014-04-01-preview/Csm.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/vmware/resource-manager/readme.md b/specification/vmware/resource-manager/readme.md index e659c411b608..a381bf23160b 100644 --- a/specification/vmware/resource-manager/readme.md +++ b/specification/vmware/resource-manager/readme.md @@ -103,28 +103,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.AVS/stable/2020-03-20/vmware.json - - $(this-folder)/Microsoft.AVS/preview/2019-08-09-preview/vmware.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/vmwarecloudsimple/resource-manager/readme.md b/specification/vmwarecloudsimple/resource-manager/readme.md index dc26819a766a..f6b5976a6807 100644 --- a/specification/vmwarecloudsimple/resource-manager/readme.md +++ b/specification/vmwarecloudsimple/resource-manager/readme.md @@ -87,27 +87,3 @@ See configuration in [readme.java.md](./readme.java.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.VMwareCloudSimple/stable/2019-04-01/vmwarecloudsimple.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/web/resource-manager/readme.md b/specification/web/resource-manager/readme.md index e50bd4a51edf..066d4cda40a8 100644 --- a/specification/web/resource-manager/readme.md +++ b/specification/web/resource-manager/readme.md @@ -1224,96 +1224,3 @@ input-file: See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.CertificateRegistration/stable/2020-06-01/AppServiceCertificateOrders.json - - $(this-folder)/Microsoft.CertificateRegistration/stable/2020-06-01/CertificateRegistrationProvider.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2020-06-01/Domains.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2020-06-01/TopLevelDomains.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2020-06-01/DomainRegistrationProvider.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/Certificates.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/CommonDefinitions.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/DeletedWebApps.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/Diagnostics.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/Provider.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/Recommendations.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/ResourceProvider.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/WebApps.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/StaticSites.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/AppServiceEnvironments.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/AppServicePlans.json - - $(this-folder)/Microsoft.Web/stable/2020-06-01/ResourceHealthMetadata.json - - $(this-folder)/Microsoft.CertificateRegistration/stable/2019-08-01/AppServiceCertificateOrders.json - - $(this-folder)/Microsoft.CertificateRegistration/stable/2019-08-01/CertificateRegistrationProvider.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2019-08-01/Domains.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2019-08-01/TopLevelDomains.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2019-08-01/DomainRegistrationProvider.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/Certificates.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/CommonDefinitions.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/DeletedWebApps.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/Diagnostics.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/Provider.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/Recommendations.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/ResourceProvider.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/WebApps.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/StaticSites.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/AppServiceEnvironments.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/AppServicePlans.json - - $(this-folder)/Microsoft.Web/stable/2019-08-01/ResourceHealthMetadata.json - - $(this-folder)/Microsoft.CertificateRegistration/stable/2018-02-01/AppServiceCertificateOrders.json - - $(this-folder)/Microsoft.CertificateRegistration/stable/2018-02-01/CertificateRegistrationProvider.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2018-02-01/Domains.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2018-02-01/TopLevelDomains.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2018-02-01/DomainRegistrationProvider.json - - $(this-folder)/Microsoft.Web/stable/2018-11-01/Certificates.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/CommonDefinitions.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/DeletedWebApps.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/Diagnostics.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/Provider.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/Recommendations.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/ResourceProvider.json - - $(this-folder)/Microsoft.Web/stable/2018-11-01/WebApps.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/AppServiceEnvironments.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/AppServicePlans.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/ResourceHealthMetadata.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/WebApps.json - - $(this-folder)/Microsoft.Web/stable/2018-02-01/Certificates.json - - $(this-folder)/Microsoft.CertificateRegistration/stable/2015-08-01/AppServiceCertificateOrders.json - - $(this-folder)/Microsoft.CertificateRegistration/stable/2015-08-01/CertificateRegistrationProvider.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2015-04-01/Domains.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2015-04-01/TopLevelDomains.json - - $(this-folder)/Microsoft.DomainRegistration/stable/2015-04-01/DomainRegistrationProvider.json - - $(this-folder)/Microsoft.Web/stable/2016-03-01/Certificates.json - - $(this-folder)/Microsoft.Web/stable/2016-03-01/CommonDefinitions.json - - $(this-folder)/Microsoft.Web/stable/2016-03-01/DeletedWebApps.json - - $(this-folder)/Microsoft.Web/stable/2016-03-01/Diagnostics.json - - $(this-folder)/Microsoft.Web/stable/2016-03-01/Provider.json - - $(this-folder)/Microsoft.Web/stable/2016-03-01/Recommendations.json - - $(this-folder)/Microsoft.Web/stable/2016-03-01/ResourceHealthMetadata.json - - $(this-folder)/Microsoft.Web/stable/2016-03-01/ResourceProvider.json - - $(this-folder)/Microsoft.Web/stable/2016-08-01/WebApps.json - - $(this-folder)/Microsoft.Web/stable/2016-09-01/AppServiceEnvironments.json - - $(this-folder)/Microsoft.Web/stable/2016-09-01/AppServicePlans.json - - $(this-folder)/Microsoft.Web/stable/2015-08-01/service.json - - $(this-folder)/Microsoft.Web/preview/2015-08-01-preview/logicAppsManagementClient.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/windowsesu/resource-manager/readme.md b/specification/windowsesu/resource-manager/readme.md index 9a5fda1c22f6..93e5346c595e 100644 --- a/specification/windowsesu/resource-manager/readme.md +++ b/specification/windowsesu/resource-manager/readme.md @@ -85,27 +85,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - diff --git a/specification/windowsiot/resource-manager/readme.md b/specification/windowsiot/resource-manager/readme.md index 1778d3755230..ac4c4bc4dfc8 100644 --- a/specification/windowsiot/resource-manager/readme.md +++ b/specification/windowsiot/resource-manager/readme.md @@ -112,31 +112,6 @@ See configuration in [readme.ruby.md](./readme.ruby.md) See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.WindowsIoT/stable/2019-06-01/WindowsIotServices.json - - $(this-folder)/Microsoft.WindowsIoT/preview/2018-02-16-preview/WindowsIotServices.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - ## trenton These settings apply only when `--trenton` is specified on the command line. diff --git a/specification/workloadmonitor/resource-manager/readme.md b/specification/workloadmonitor/resource-manager/readme.md index e92be26d508e..c5f72c03751d 100644 --- a/specification/workloadmonitor/resource-manager/readme.md +++ b/specification/workloadmonitor/resource-manager/readme.md @@ -173,27 +173,3 @@ generate-interface: true See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) -## Multi-API/Profile support for AutoRest v3 generators - -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. - -This block is updated by an automatic script. Edits may be lost! - -``` yaml $(tag) == 'all-api-versions' /* autogenerated */ -# include the azure profile definitions from the standard location -require: $(this-folder)/../../../profiles/readme.md - -# all the input files across all versions -input-file: - - $(this-folder)/Microsoft.WorkloadMonitor/preview/2018-08-31-preview/Microsoft.WorkloadMonitor.json - -``` - -If there are files that should not be in the `all-api-versions` set, -uncomment the `exclude-file` section below and add the file paths. - -``` yaml $(tag) == 'all-api-versions' -#exclude-file: -# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json -``` - From be39f5abd3dc4cf6db384f688e0dd18dd907d04b Mon Sep 17 00:00:00 2001 From: sudipd-msft <20959938+usvoyager@users.noreply.github.com> Date: Mon, 21 Sep 2020 21:54:39 -0700 Subject: [PATCH 20/37] Swagger for Communication Services Resource Manager Preview (#10877) * Swagger for Communication Services Preview * python track2 * Fix SpellCheck and PrettierCheck errors * More PrettierCheck fixes Co-authored-by: Sudipta Dey (WDG) Co-authored-by: Changlong Liu --- .../CommunicationService.json | 1088 +++++++++++++++++ .../examples/createOrUpdate.json | 44 + .../2020-08-20-preview/examples/delete.json | 17 + .../2020-08-20-preview/examples/get.json | 32 + .../examples/getOperationStatus.json | 26 + .../examples/linkNotificationHub.json | 27 + .../examples/listByResourceGroup.json | 23 + .../examples/listBySubscription.json | 22 + .../2020-08-20-preview/examples/listKeys.json | 16 + .../examples/regenerateKey.json | 22 + .../2020-08-20-preview/examples/update.json | 32 + .../resource-manager/readme.csharp.md | 15 + .../resource-manager/readme.go.md | 26 + .../communication/resource-manager/readme.md | 70 ++ .../resource-manager/readme.python.md | 44 + 15 files changed, 1504 insertions(+) create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/CommunicationService.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/createOrUpdate.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/delete.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/get.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/getOperationStatus.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/linkNotificationHub.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listByResourceGroup.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listBySubscription.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listKeys.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/regenerateKey.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/update.json create mode 100644 specification/communication/resource-manager/readme.csharp.md create mode 100644 specification/communication/resource-manager/readme.go.md create mode 100644 specification/communication/resource-manager/readme.md create mode 100644 specification/communication/resource-manager/readme.python.md diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/CommunicationService.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/CommunicationService.json new file mode 100644 index 000000000000..6e840a1d9a20 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/CommunicationService.json @@ -0,0 +1,1088 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Services Management API", + "version": "2020-08-20-preview", + "description": "REST API for Azure Communication Services" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Communication/operations": { + "get": { + "description": "Lists all of the available REST API operations of the Microsoft.Communication provider.", + "operationId": "Operations_List", + "summary": "List Operations", + "tags": [ + "Operations" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices/{communicationServiceName}/linkNotificationHub": { + "post": { + "description": "Links an Azure Notification Hub to this communication service.", + "operationId": "CommunicationService_LinkNotificationHub", + "summary": "Link Notification Hub", + "tags": [ + "CommunicationService" + ], + "parameters": [ + { + "name": "linkNotificationHubParameters", + "in": "body", + "schema": { + "$ref": "#/definitions/LinkNotificationHubParameters" + }, + "description": "Parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "Success. The notification hub has been linked.", + "schema": { + "$ref": "#/definitions/LinkedNotificationHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Link notification hub": { + "$ref": "./examples/linkNotificationHub.json" + } + } + } + }, + "/providers/Microsoft.Communication/locations/{location}/operationStatuses/{operationId}": { + "get": { + "description": "Gets the current status of an async operation.", + "operationId": "OperationStatuses_Get", + "summary": "Get Operation Status", + "tags": [ + "OperationStatus" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "The requested operation status", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/getOperationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Communication/communicationServices": { + "get": { + "description": "Handles requests to list all resources in a subscription.", + "operationId": "CommunicationService_ListBySubscription", + "summary": "List By Subscription", + "tags": [ + "CommunicationService" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of CommunicationServices in the subscription.", + "schema": { + "$ref": "#/definitions/CommunicationServiceResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List by subscription": { + "$ref": "./examples/listBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices": { + "get": { + "description": "Handles requests to list all resources in a resource group.", + "operationId": "CommunicationService_ListByResourceGroup", + "summary": "List By Resource Group", + "tags": [ + "CommunicationService" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of CommunicationServices in a resourceGroup.", + "schema": { + "$ref": "#/definitions/CommunicationServiceResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List by resource group": { + "$ref": "./examples/listByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices/{communicationServiceName}": { + "patch": { + "description": "Operation to update an existing CommunicationService.", + "operationId": "CommunicationService_Update", + "summary": "Update", + "tags": [ + "CommunicationService" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the update operation", + "required": false, + "schema": { + "$ref": "#/definitions/TaggedResource" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "The update request was successful", + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update resource": { + "$ref": "./examples/update.json" + } + } + }, + "get": { + "description": "Get the CommunicationService and its properties.", + "operationId": "CommunicationService_Get", + "summary": "Get", + "tags": [ + "CommunicationService" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the corresponding CommunicationService service.", + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get resource": { + "$ref": "./examples/get.json" + } + } + }, + "put": { + "description": "Create a new CommunicationService or update an existing CommunicationService.", + "operationId": "CommunicationService_CreateOrUpdate", + "summary": "Create Or Update", + "tags": [ + "CommunicationService" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": false, + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "The create or update request was completed successfully", + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "201": { + "description": "The create or update request was accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update resource": { + "$ref": "./examples/createOrUpdate.json" + } + } + }, + "delete": { + "description": "Operation to delete a CommunicationService.", + "operationId": "CommunicationService_Delete", + "summary": "Delete", + "tags": [ + "CommunicationService" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "The delete operation was successful." + }, + "202": { + "description": "The delete operation is being performed in the background.", + "headers": { + "location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "The resource did not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete resource": { + "$ref": "./examples/delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices/{communicationServiceName}/listKeys": { + "post": { + "description": "Get the access keys of the CommunicationService resource.", + "operationId": "CommunicationService_ListKeys", + "summary": "List Keys", + "tags": [ + "CommunicationService" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes CommunicationService access keys.", + "schema": { + "$ref": "#/definitions/CommunicationServiceKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List keys": { + "$ref": "./examples/listKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices/{communicationServiceName}/regenerateKey": { + "post": { + "description": "Regenerate CommunicationService access key. PrimaryKey and SecondaryKey cannot be regenerated at the same time.", + "operationId": "CommunicationService_RegenerateKey", + "summary": "Regenerate Key", + "tags": [ + "CommunicationService" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameter that describes the Regenerate Key Operation.", + "required": false, + "schema": { + "$ref": "#/definitions/RegenerateKeyParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "Created. The response contains the new key.", + "schema": { + "$ref": "#/definitions/CommunicationServiceKeys" + } + }, + "201": { + "description": "Created and an async operation is executing in background to make the new key take effect. The response contains new keys and an Azure-AsyncOperation header to query the async operation result.", + "schema": { + "$ref": "#/definitions/CommunicationServiceKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Regenerate key": { + "$ref": "./examples/regenerateKey.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Error response indicating why the requested operation could not be performed.", + "type": "object", + "properties": { + "error": { + "description": "The error", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + } + } + }, + "OperationList": { + "description": "Result of the request to list REST API operations. It contains a list of operations.", + "type": "object", + "properties": { + "value": { + "description": "List of operations supported by the resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "Operation": { + "description": "REST API operation supported by CommunicationService resource provider.", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation with format: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The object that describes the operation." + }, + "origin": { + "description": "Optional. The intended executor of the operation; governs the display of the operation in the RBAC UX and the audit logs UX.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Extra properties for the operation.", + "x-ms-client-flatten": false + } + } + }, + "OperationDisplay": { + "description": "The object that describes a operation.", + "type": "object", + "properties": { + "provider": { + "description": "Friendly name of the resource provider", + "type": "string" + }, + "resource": { + "description": "Resource type on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The localized friendly name for the operation.", + "type": "string" + }, + "description": { + "description": "The localized friendly description for the operation", + "type": "string" + } + } + }, + "OperationProperties": { + "description": "Extra Operation properties.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "The service specifications." + } + } + }, + "ServiceSpecification": { + "description": "An object that describes a specification.", + "type": "object", + "properties": { + "metricSpecifications": { + "description": "Specifications of the Metrics for Azure Monitoring.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Specifications of the Metrics for Azure Monitoring.", + "type": "object", + "properties": { + "name": { + "description": "Name of the metric.", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the metric.", + "type": "string" + }, + "displayDescription": { + "description": "Localized friendly description of the metric.", + "type": "string" + }, + "unit": { + "description": "The unit that makes sense for the metric.", + "type": "string" + }, + "aggregationType": { + "description": "The method for aggregating the metric.", + "type": "string", + "enum": [ + "Average", + "Minimum", + "Maximum", + "Total", + "Count" + ], + "x-ms-enum": { + "name": "AggregationType", + "modelAsString": true + } + }, + "fillGapWithZero": { + "description": "Optional. If set to true, then zero will be returned for time duration where no metric is emitted/published. \r\nEx. a metric that returns the number of times a particular error code was emitted. The error code may not appear \r\noften, instead of the RP publishing 0, Shoebox can auto fill in 0s for time periods where nothing was emitted.", + "type": "string" + }, + "category": { + "description": "The name of the metric category that the metric belongs to. A metric can only belong to a single category.", + "type": "string" + }, + "dimensions": { + "description": "The dimensions of the metrics.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + } + } + }, + "Dimension": { + "description": "Specifications of the Dimension of metrics.", + "type": "object", + "properties": { + "name": { + "description": "The public facing name of the dimension.", + "type": "string" + }, + "displayName": { + "description": "Localized friendly display name of the dimension.", + "type": "string" + }, + "internalName": { + "description": "Name of the dimension as it appears in MDM.", + "type": "string" + }, + "toBeExportedForShoebox": { + "description": "A Boolean flag indicating whether this dimension should be included for the shoebox export scenario.", + "type": "boolean" + } + } + }, + "LinkNotificationHubParameters": { + "description": "Description of an Azure Notification Hub to link to the communication service", + "required": [ + "resourceId", + "connectionString" + ], + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID of the notification hub", + "type": "string" + }, + "connectionString": { + "description": "Connection string for the notification hub", + "type": "string" + } + } + }, + "LinkedNotificationHub": { + "description": "A notification hub that has been linked to the communication service", + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID of the notification hub", + "type": "string" + } + } + }, + "OperationStatus": { + "description": "The current status of an async operation", + "type": "object", + "properties": { + "id": { + "description": "The operation Id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Provisioning state of the resource.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Creating", + "Deleting", + "Moving" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "startTime": { + "description": "The start time of the operation", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "endTime": { + "description": "The end time of the operation", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "percentComplete": { + "description": "Percent of the operation that is complete", + "type": "number", + "readOnly": true, + "minimum": 0, + "maximum": 100 + }, + "error": { + "description": "Operation Error message", + "$ref": "#/definitions/ErrorResponse", + "x-ms-client-flatten": true + } + } + }, + "CommunicationServiceResourceList": { + "description": "Object that includes an array of CommunicationServices and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of CommunicationService", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "CommunicationServiceResource": { + "description": "A class representing a CommunicationService resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/LocationResource" + }, + { + "$ref": "#/definitions/TaggedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CommunicationServiceProperties", + "description": "The properties of the service.", + "x-ms-client-flatten": true + } + } + }, + "Resource": { + "description": "The core properties of ARM resources.", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified resource ID for the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the service - e.g. \"Microsoft.Communication/CommunicationServices\"", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "LocationResource": { + "description": "An ARM resource with its own location (not a global or an inherited location).", + "type": "object", + "properties": { + "location": { + "description": "The Azure location where the CommunicationService is running.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + } + }, + "TaggedResource": { + "description": "An ARM resource with that can accept tags", + "type": "object", + "properties": { + "tags": { + "description": "Tags of the service which is a list of key value pairs that describe the resource.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ] + } + } + }, + "CommunicationServiceProperties": { + "description": "A class that describes the properties of the CommunicationService.", + "required": [ + "dataLocation" + ], + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the resource.", + "enum": [ + "Unknown", + "Succeeded", + "Failed", + "Canceled", + "Running", + "Creating", + "Updating", + "Deleting", + "Moving" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "hostName": { + "description": "FQDN of the CommunicationService instance.", + "type": "string", + "readOnly": true + }, + "dataLocation": { + "description": "The location where the communication service stores its data at rest.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "notificationHubId": { + "description": "Resource ID of an Azure Notification Hub linked to this resource.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the CommunicationService resource. Probably you need the same or higher version of client SDKs.", + "type": "string", + "readOnly": true + }, + "immutableResourceId": { + "description": "The immutable resource Id of the communication service.", + "type": "string", + "readOnly": true + } + } + }, + "CommunicationServiceKeys": { + "description": "A class representing the access keys of a CommunicationService.", + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary access key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary access key.", + "type": "string" + }, + "primaryConnectionString": { + "description": "CommunicationService connection string constructed via the primaryKey", + "type": "string" + }, + "secondaryConnectionString": { + "description": "CommunicationService connection string constructed via the secondaryKey", + "type": "string" + } + } + }, + "RegenerateKeyParameters": { + "description": "Parameters describes the request to regenerate access keys", + "type": "object", + "properties": { + "keyType": { + "description": "The keyType to regenerate. Must be either 'primary' or 'secondary'(case-insensitive).", + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string", + "enum": [ + "2020-08-20-preview" + ] + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Gets subscription ID which uniquely identifies the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "CommunicationServiceName": { + "name": "communicationServiceName", + "in": "path", + "description": "The name of the CommunicationService resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "description": "The Azure region", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "description": "The ID of an ongoing async operation", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/createOrUpdate.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/createOrUpdate.json new file mode 100644 index 000000000000..aafec77cf065 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/createOrUpdate.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "12345", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2020-08-20-preview", + "parameters": { + "location": "Global", + "properties": { + "dataLocation": "United States" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Succeeded", + "hostName": "mycommunicationresource.communications.azure.com" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + }, + "body": { + "id": "/subscriptions/12345/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/delete.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/delete.json new file mode 100644 index 000000000000..5bb01a4d2773 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "12345", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2020-08-20-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + } + }, + "204": {} + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/get.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/get.json new file mode 100644 index 000000000000..ea4bdc176b41 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "12345", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2020-08-20-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Running", + "hostName": "mycommunicationservice.comms.azure.net", + "version": "0.2.0" + } + } + }, + "default": { + "body": { + "error": { + "code": "ResourceNotFound", + "message": "The requested resource was not found" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/getOperationStatus.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/getOperationStatus.json new file mode 100644 index 000000000000..caa62830d1e7 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/getOperationStatus.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "location": "westus2", + "operationId": "db5f291f-284d-46e9-9152-d5c83f7c14b8", + "api-version": "2020-08-20-preview" + }, + "responses": { + "200": { + "body": { + "id": "db5f291f-284d-46e9-9152-d5c83f7c14b8", + "status": "Succeeded", + "startTime": "2020-07-06T17:06:26.100Z", + "endTime": "2020-07-06T17:06:42.800Z", + "percentComplete": 100 + } + }, + "default": { + "body": { + "error": { + "code": "OperationNotFound", + "message": "The requested async operation was not found" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/linkNotificationHub.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/linkNotificationHub.json new file mode 100644 index 000000000000..1f39fc5fecc3 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/linkNotificationHub.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "12345", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2020-08-20-preview", + "linkNotificationHubParameters": { + "resourceId": "/subscriptions/12345/resourceGroups/MyOtherResourceGroup/providers/Microsoft.NotificationHubs/namespaces/MyNamespace/notificationHubs/MyHub", + "connectionString": "Endpoint=sb://MyNamespace.servicebus.windows.net/;SharedAccessKey=abcd1234" + } + }, + "responses": { + "200": { + "body": { + "resourceId": "/subscriptions/12345/resourceGroups/MyOtherResourceGroup/providers/Microsoft.NotificationHubs/namespaces/MyNamespace/notificationHubs/MyHub" + } + }, + "default": { + "body": { + "error": { + "code": "WrongSubscription", + "message": "The notification hub must be in the same subscription as the communication service" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listByResourceGroup.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listByResourceGroup.json new file mode 100644 index 000000000000..139e7f6cf04f --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listByResourceGroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "12345", + "resourceGroupName": "MyResourceGroup", + "api-version": "2020-08-20-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Running", + "dataLocation": "United States", + "hostName": "mycommunicationservice.comms.azure.net", + "version": "0.2.0" + } + } + ] + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listBySubscription.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listBySubscription.json new file mode 100644 index 000000000000..8300a9f55093 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listBySubscription.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345", + "api-version": "2020-08-20-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Running", + "dataLocation": "United States", + "hostName": "mycommunicationservice.comms.azure.net", + "version": "0.2.0" + } + } + ] + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listKeys.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listKeys.json new file mode 100644 index 000000000000..ee092cda96e0 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/listKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "12345", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2020-08-20-preview" + }, + "responses": { + "200": { + "body": { + "primaryKey": "1234", + "secondaryKey": "ABCD" + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/regenerateKey.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/regenerateKey.json new file mode 100644 index 000000000000..72ba59e10b8f --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/regenerateKey.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2020-08-20-preview", + "parameters": { + "keyType": "Primary" + } + }, + "responses": { + "200": { + "body": { + "primaryKey": "1234", + "primaryConnectionString": "endpoint=http://example.com;accesskey=1234" + } + }, + "201": { + "body": {} + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/update.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/update.json new file mode 100644 index 000000000000..a441c4f0546c --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2020-08-20-preview/examples/update.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "12345", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2020-08-20-preview", + "parameters": { + "tags": { + "newTag": "newVal" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "tags": { + "newTag": "newVal" + }, + "properties": { + "provisioningState": "Succeeded", + "dataLocation": "United States", + "hostName": "mycommunicationresource.communications.azure.com", + "version": "0.2.0" + } + } + } + } +} diff --git a/specification/communication/resource-manager/readme.csharp.md b/specification/communication/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..f1aed9643153 --- /dev/null +++ b/specification/communication/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.Azure.Management.Communication + output-folder: $(csharp-sdks-folder)/communication/Microsoft.Azure.Management.Communication/src/Generated +``` diff --git a/specification/communication/resource-manager/readme.go.md b/specification/communication/resource-manager/readme.go.md new file mode 100644 index 000000000000..1434d5fd3791 --- /dev/null +++ b/specification/communication/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: communication + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2020-08-20-preview +``` + +### Tag: package-2020-08-20-preview and go + +These settings apply only when `--tag=package-2020-08-20-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-08-20-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-08-20-preview/$(namespace) +``` diff --git a/specification/communication/resource-manager/readme.md b/specification/communication/resource-manager/readme.md new file mode 100644 index 000000000000..2191f6dd16bf --- /dev/null +++ b/specification/communication/resource-manager/readme.md @@ -0,0 +1,70 @@ +# vsonline + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Azure Communication Services. + +--- + +## Getting Started + +To build the SDKs for Azure Communication Services, simply [Install AutoRest](https://aka.ms/autorest/install) or via `npm` (`npm install -g autorest`) and in this folder run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` + +--- + +## Configuration + +### Basic Information + +These are the global settings for the Azure Communication Services API. + +```yaml +title: CommunicationServiceManagementClient +openapi-type: arm +openapi-subtype: rpaas +tag: package-2020-08-20-preview +``` + +### Tag: package-2020-08-20-preview + +These settings apply only when `--tag=package-2020-08-20-preview` is specified on the command line. + +```yaml $(tag) == 'package-2020-08-20-preview' +input-file: + - Microsoft.Communication/preview/2020-08-20-preview/CommunicationService.json +``` + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 + - repo: azure-sdk-for-go + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_vsonline'] +``` + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) diff --git a/specification/communication/resource-manager/readme.python.md b/specification/communication/resource-manager/readme.python.md new file mode 100644 index 000000000000..18112d3b5145 --- /dev/null +++ b/specification/communication/resource-manager/readme.python.md @@ -0,0 +1,44 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + + +``` yaml !$(track2) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.communication + package-name: azure-mgmt-communication + package-version: 1.0.0rc1 + clear-output-folder: true +``` + +These settings apply only when `--track2` is specified on the command line. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-communication +no-namespace-folders: true +package-version: 1.0.0rc1 +``` + +```yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/communication/azure-mgmt-communication/azure/mgmt/communication +no-namespace-folders: true +output-folder: $(python-sdks-folder)/communication/azure-mgmt-communication/azure/mgmt/communication +``` + +```yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/communication/azure-mgmt-communication +basic-setup-py: true +output-folder: $(python-sdks-folder)/communication/azure-mgmt-communication +``` From b8b8a53f43405c03e0073dd3c7ab41ab54003525 Mon Sep 17 00:00:00 2001 From: vayada Date: Mon, 21 Sep 2020 23:08:08 -0700 Subject: [PATCH 21/37] Fixed S360 issues related to ARM & SDK swagger linting errors for Microsoft.Solutions. (#10804) * Fixed Swagger linting ARM & SDK issues. * Fixed Swagger linting ARM & SDK issues. * Fixed model validation & example errors. * Fixed example errors. * Fixed example errors. * Prettier check commit. * Added examples. * Added examples. * Added examples. --- .../examples/deleteApplicationDefinition.json | 13 ++ .../managedapplications.json | 87 ++++++++-- .../examples/createOrUpdateApplication.json | 27 ++- .../createOrUpdateApplicationDefinition.json | 42 ++++- .../examples/deleteApplicationDefinition.json | 13 ++ .../2018-06-01/examples/getApplication.json | 7 +- .../examples/getApplicationDefinition.json | 8 +- ...ApplicationDefinitionsByResourceGroup.json | 6 +- .../listApplicationsByResourceGroup.json | 4 - .../examples/listSolutionsOperations.json | 30 ++++ .../2018-06-01/managedapplications.json | 158 ++++++++++++++++-- .../examples/deleteApplicationDefinition.json | 13 ++ .../2019-07-01/managedapplications.json | 87 ++++++++-- 13 files changed, 427 insertions(+), 68 deletions(-) create mode 100644 specification/resources/resource-manager/Microsoft.Solutions/preview/2020-08-21-preview/examples/deleteApplicationDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/deleteApplicationDefinition.json create mode 100644 specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listSolutionsOperations.json create mode 100644 specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/examples/deleteApplicationDefinition.json diff --git a/specification/resources/resource-manager/Microsoft.Solutions/preview/2020-08-21-preview/examples/deleteApplicationDefinition.json b/specification/resources/resource-manager/Microsoft.Solutions/preview/2020-08-21-preview/examples/deleteApplicationDefinition.json new file mode 100644 index 000000000000..ec85348c1fa0 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Solutions/preview/2020-08-21-preview/examples/deleteApplicationDefinition.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg", + "applicationDefinitionName": "myManagedApplicationDef", + "api-version": "2020-08-21-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/resources/resource-manager/Microsoft.Solutions/preview/2020-08-21-preview/managedapplications.json b/specification/resources/resource-manager/Microsoft.Solutions/preview/2020-08-21-preview/managedapplications.json index 58091ce4a537..285104f4ea18 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/preview/2020-08-21-preview/managedapplications.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/preview/2020-08-21-preview/managedapplications.json @@ -272,7 +272,7 @@ "name": "parameters", "in": "body", "schema": { - "$ref": "#/definitions/Application" + "$ref": "#/definitions/ApplicationPatchable" }, "description": "Parameters supplied to update an existing managed application." }, @@ -1106,24 +1106,43 @@ } }, "x-ms-paths": { - "/{applicationDefinitionId}?disambiguation_dummy": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applicationDefinitions/{applicationDefinitionName}?disambiguation_dummy": { "get": { "tags": [ "ApplicationDefinitions" ], "operationId": "ApplicationDefinitions_GetById", "description": "Gets the managed application definition.", + "x-ms-examples": { + "Get managed application definition": { + "$ref": "./examples/getApplicationDefinition.json" + } + }, "parameters": [ { - "name": "applicationDefinitionId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "applicationDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed application definition.", + "minLength": 3, + "maxLength": 64 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -1147,17 +1166,36 @@ ], "operationId": "ApplicationDefinitions_DeleteById", "description": "Deletes the managed application definition.", + "x-ms-examples": { + "Get managed application definition": { + "$ref": "./examples/deleteApplicationDefinition.json" + } + }, "parameters": [ { - "name": "applicationDefinitionId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "applicationDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed application definition.", + "minLength": 3, + "maxLength": 64 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -1185,14 +1223,36 @@ ], "operationId": "ApplicationDefinitions_CreateOrUpdateById", "description": "Creates a new managed application definition.", + "x-ms-examples": { + "Create or update managed application definition": { + "$ref": "./examples/createOrUpdateApplicationDefinition.json" + } + }, "parameters": [ { - "name": "applicationDefinitionId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "applicationDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed application definition.", + "minLength": 3, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" }, { "name": "parameters", @@ -1202,9 +1262,6 @@ "$ref": "#/definitions/ApplicationDefinition" }, "description": "Parameters supplied to the create or update a managed application definition." - }, - { - "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { @@ -1268,7 +1325,7 @@ "properties": { "properties": { "x-ms-client-flatten": true, - "$ref": "#/definitions/ApplicationPropertiesPatchable", + "$ref": "#/definitions/ApplicationProperties", "description": "The managed application properties." }, "plan": { diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/createOrUpdateApplication.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/createOrUpdateApplication.json index 957c3d0ec451..451460766d90 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/createOrUpdateApplication.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/createOrUpdateApplication.json @@ -2,14 +2,12 @@ "parameters": { "subscriptionId": "subid", "resourceGroupName": "rg", - "managedApplicationName": "myManagedApplication", + "applicationName": "myManagedApplication", "api-version": "2018-06-01", "parameters": { "properties": { - "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applicationDefinitions/myAppDef", "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG" }, - "name": "myManagedApplication", "location": "East US 2", "kind": "ServiceCatalog" } @@ -23,14 +21,33 @@ "type": "Microsoft.Solutions/applications", "location": "East US 2", "managedBy": null, - "resourceGroup": "rg", "tags": null, "plan": null, "identity": null, "kind": "ServiceCatalog", "sku": null, "properties": { - "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applicationDefinitions/myAppDef", + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "outputs": null, + "parameters": null, + "provisioningState": "Created" + } + } + }, + "200": { + "headers": {}, + "body": { + "name": "myManagedApplication", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/myManagedApplication", + "type": "Microsoft.Solutions/applications", + "location": "East US 2", + "managedBy": null, + "tags": null, + "plan": null, + "identity": null, + "kind": "ServiceCatalog", + "sku": null, + "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "outputs": null, "parameters": null, diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/createOrUpdateApplicationDefinition.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/createOrUpdateApplicationDefinition.json index 6e1863f58728..745348a35fe4 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/createOrUpdateApplicationDefinition.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/createOrUpdateApplicationDefinition.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subid", "resourceGroupName": "rg", - "managedApplicationDefinitionName": "myManagedApplicationDef", + "applicationDefinitionName": "myManagedApplicationDef", "api-version": "2018-06-01", "parameters": { "properties": { @@ -29,7 +29,6 @@ "type": "Microsoft.Solutions/applicationDefinitions", "location": "East US 2", "managedBy": null, - "resourceGroup": "rg", "tags": null, "identity": null, "sku": null, @@ -54,7 +53,44 @@ ], "description": "myManagedApplicationDef description", "displayName": "myManagedApplicationDef", - "lockLevel": null, + "lockLevel": "None", + "packageFileUri": "https://path/to/packagezipfile" + } + } + }, + "200": { + "headers": {}, + "body": { + "name": "myManagedApplicationDef", + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applicationDefinitions/myManagedApplicationDef", + "type": "Microsoft.Solutions/applicationDefinitions", + "location": "East US 2", + "managedBy": null, + "tags": null, + "identity": null, + "sku": null, + "properties": { + "artifacts": [ + { + "name": "CreateUiDefinition", + "type": "Custom", + "uri": "https://path/to/managedApplicationCreateUiDefinition.json" + }, + { + "name": "ManagedApplicationResourceTemplate", + "type": "Template", + "uri": "https://path/to/mainTemplate.json" + } + ], + "authorizations": [ + { + "principalId": "validprincipalguid", + "roleDefinitionId": "validroleguid" + } + ], + "description": "myManagedApplicationDef description", + "displayName": "myManagedApplicationDef", + "lockLevel": "None", "packageFileUri": "https://path/to/packagezipfile" } } diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/deleteApplicationDefinition.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/deleteApplicationDefinition.json new file mode 100644 index 000000000000..72e9f6531a59 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/deleteApplicationDefinition.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg", + "applicationDefinitionName": "myManagedApplicationDef", + "api-version": "2018-06-01" + }, + "responses": { + "204": {}, + "200": {}, + "202": {} + } +} diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/getApplication.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/getApplication.json index cf83b23e112d..339b581af507 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/getApplication.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/getApplication.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subid", "resourceGroupName": "rg", - "managedApplicationName": "myManagedApplication", + "applicationName": "myManagedApplication", "api-version": "2018-06-01" }, "responses": { @@ -14,20 +14,19 @@ "type": "Microsoft.Solutions/applications", "location": "East US 2", "managedBy": null, - "resourceGroup": "rg", "tags": null, "plan": null, "identity": null, "kind": "ServiceCatalog", "sku": null, "properties": { - "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/managedApplicationDefinitions/myAppDef", "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "outputs": null, "parameters": null, "provisioningState": "Created" } } - } + }, + "404": {} } } diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/getApplicationDefinition.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/getApplicationDefinition.json index f3ee03cc02df..b6886c726d4d 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/getApplicationDefinition.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/getApplicationDefinition.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "subid", "resourceGroupName": "rg", - "managedApplicationName": "myManagedApplicationDef", + "applicationDefinitionName": "myManagedApplicationDef", "api-version": "2018-06-01" }, "responses": { @@ -14,7 +14,6 @@ "type": "Microsoft.Solutions/applicationDefinitions", "location": "East US 2", "managedBy": null, - "resourceGroup": "rg", "tags": null, "identity": null, "sku": null, @@ -39,10 +38,11 @@ ], "description": "myManagedApplicationDef description", "displayName": "myManagedApplicationDef", - "lockLevel": null, + "lockLevel": "None", "packageFileUri": "https://path/to/packagezipfile" } } - } + }, + "404": {} } } diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listApplicationDefinitionsByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listApplicationDefinitionsByResourceGroup.json index faec6495dd23..a7924b761b65 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listApplicationDefinitionsByResourceGroup.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listApplicationDefinitionsByResourceGroup.json @@ -15,7 +15,6 @@ "type": "Microsoft.Solutions/applicationDefinitions", "location": "East US 2", "managedBy": null, - "resourceGroup": "rg", "tags": null, "identity": null, "sku": null, @@ -40,7 +39,7 @@ ], "description": "myManagedApplicationDef description", "displayName": "myManagedApplicationDef", - "lockLevel": null, + "lockLevel": "None", "packageFileUri": "https://path/to/packagezipfile" } }, @@ -50,7 +49,6 @@ "type": "Microsoft.Solutions/applicationDefinitions", "location": "West US", "managedBy": null, - "resourceGroup": "rg", "tags": null, "identity": null, "sku": null, @@ -75,7 +73,7 @@ ], "description": "myManagedApplicationDef2 description", "displayName": "myManagedApplicationDef2", - "lockLevel": null, + "lockLevel": "None", "packageFileUri": "https://path/to/packagezipfile" } } diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listApplicationsByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listApplicationsByResourceGroup.json index 2cea45e315b8..ffc143598fec 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listApplicationsByResourceGroup.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listApplicationsByResourceGroup.json @@ -15,14 +15,12 @@ "type": "Microsoft.Solutions/applications", "location": "East US 2", "managedBy": null, - "resourceGroup": "rg", "tags": null, "plan": null, "identity": null, "kind": "ServiceCatalog", "sku": null, "properties": { - "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/managedApplicationDefinitions/myAppDef", "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "outputs": null, "parameters": null, @@ -35,14 +33,12 @@ "type": "Microsoft.Solutions/applications", "location": "West US", "managedBy": null, - "resourceGroup": "rg", "tags": null, "plan": null, "identity": null, "kind": "ServiceCatalog", "sku": null, "properties": { - "managedApplicationDefinitionId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/managedApplicationDefinitions/myAppDef2", "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "outputs": null, "parameters": null, diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listSolutionsOperations.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listSolutionsOperations.json new file mode 100644 index 000000000000..55f367f84dc3 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/examples/listSolutionsOperations.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "SolutionsOpeartion1", + "display": { + "provider": "Microsoft.ResourceProvider", + "resource": "Resource1", + "operation": "Read" + } + }, + { + "name": "SolutionssOpeartion2", + "display": { + "provider": "Microsoft.ResourceProvider", + "resource": "Resource2", + "operation": "Write" + } + } + ] + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/managedapplications.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/managedapplications.json index 2702391b5df7..2653ec9878f1 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/managedapplications.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2018-06-01/managedapplications.json @@ -34,6 +34,36 @@ } }, "paths": { + "/providers/Microsoft.Solutions/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "ListOperations", + "description": "Lists all of the available Microsoft.Solutions REST API operations.", + "x-ms-examples": { + "List Solutions operations": { + "$ref": "./examples/listSolutionsOperations.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applications/{applicationName}": { "get": { "tags": [ @@ -239,7 +269,7 @@ "name": "parameters", "in": "body", "schema": { - "$ref": "#/definitions/Application" + "$ref": "#/definitions/ApplicationPatchable" }, "description": "Parameters supplied to update an existing managed application." }, @@ -745,24 +775,43 @@ } }, "x-ms-paths": { - "/{applicationDefinitionId}?disambiguation_dummy": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applicationDefinitions/{applicationDefinitionName}?disambiguation_dummy": { "get": { "tags": [ "ApplicationDefinitions" ], "operationId": "ApplicationDefinitions_GetById", "description": "Gets the managed application definition.", + "x-ms-examples": { + "Get managed application definition": { + "$ref": "./examples/getApplicationDefinition.json" + } + }, "parameters": [ { - "name": "applicationDefinitionId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "applicationDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed application definition.", + "minLength": 3, + "maxLength": 64 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -789,17 +838,36 @@ ], "operationId": "ApplicationDefinitions_DeleteById", "description": "Deletes the managed application definition.", + "x-ms-examples": { + "Get managed application definition": { + "$ref": "./examples/deleteApplicationDefinition.json" + } + }, "parameters": [ { - "name": "applicationDefinitionId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "applicationDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed application definition.", + "minLength": 3, + "maxLength": 64 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -827,14 +895,36 @@ ], "operationId": "ApplicationDefinitions_CreateOrUpdateById", "description": "Creates a new managed application definition.", + "x-ms-examples": { + "Create or update managed application definition": { + "$ref": "./examples/createOrUpdateApplicationDefinition.json" + } + }, "parameters": [ { - "name": "applicationDefinitionId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "applicationDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed application definition.", + "minLength": 3, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" }, { "name": "parameters", @@ -844,9 +934,6 @@ "$ref": "#/definitions/ApplicationDefinition" }, "description": "Parameters supplied to the create or update a managed application definition." - }, - { - "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { @@ -1351,6 +1438,49 @@ "type": "string" } } + }, + "Operation": { + "description": "Microsoft.Solutions operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Solutions", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Application, JitRequest, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Microsoft.Solutions operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Microsoft.Solutions operations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/examples/deleteApplicationDefinition.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/examples/deleteApplicationDefinition.json new file mode 100644 index 000000000000..c542a5d3dd5f --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/examples/deleteApplicationDefinition.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg", + "applicationDefinitionName": "myManagedApplicationDef", + "api-version": "2019-07-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/managedapplications.json b/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/managedapplications.json index 6a3432f615ea..df4427a208ec 100644 --- a/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/managedapplications.json +++ b/specification/resources/resource-manager/Microsoft.Solutions/stable/2019-07-01/managedapplications.json @@ -266,7 +266,7 @@ "name": "parameters", "in": "body", "schema": { - "$ref": "#/definitions/Application" + "$ref": "#/definitions/ApplicationPatchable" }, "description": "Parameters supplied to update an existing managed application." }, @@ -1097,24 +1097,43 @@ } }, "x-ms-paths": { - "/{applicationDefinitionId}?disambiguation_dummy": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Solutions/applicationDefinitions/{applicationDefinitionName}?disambiguation_dummy": { "get": { "tags": [ "ApplicationDefinitions" ], "operationId": "ApplicationDefinitions_GetById", "description": "Gets the managed application definition.", + "x-ms-examples": { + "Get managed application definition": { + "$ref": "./examples/getApplicationDefinition.json" + } + }, "parameters": [ { - "name": "applicationDefinitionId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "applicationDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed application definition.", + "minLength": 3, + "maxLength": 64 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -1138,17 +1157,36 @@ ], "operationId": "ApplicationDefinitions_DeleteById", "description": "Deletes the managed application definition.", + "x-ms-examples": { + "Get managed application definition": { + "$ref": "./examples/deleteApplicationDefinition.json" + } + }, "parameters": [ { - "name": "applicationDefinitionId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "applicationDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed application definition.", + "minLength": 3, + "maxLength": 64 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -1176,14 +1214,36 @@ ], "operationId": "ApplicationDefinitions_CreateOrUpdateById", "description": "Creates a new managed application definition.", + "x-ms-examples": { + "Create or update managed application definition": { + "$ref": "./examples/createOrUpdateApplicationDefinition.json" + } + }, "parameters": [ { - "name": "applicationDefinitionId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the managed application definition, including the managed application name and the managed application definition resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.Solutions/applicationDefinitions/{applicationDefinition-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "applicationDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed application definition.", + "minLength": 3, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" }, { "name": "parameters", @@ -1193,9 +1253,6 @@ "$ref": "#/definitions/ApplicationDefinition" }, "description": "Parameters supplied to the create or update a managed application definition." - }, - { - "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { @@ -1259,7 +1316,7 @@ "properties": { "properties": { "x-ms-client-flatten": true, - "$ref": "#/definitions/ApplicationPropertiesPatchable", + "$ref": "#/definitions/ApplicationProperties", "description": "The managed application properties." }, "plan": { From 38907c94084f9f6222206872b99674d3d48cd3e3 Mon Sep 17 00:00:00 2001 From: Eran Gonen Date: Tue, 22 Sep 2020 09:10:26 +0300 Subject: [PATCH 22/37] Fixed ActionRule's polymorphism via discriminator (#10829) --- .../2019-05-05-preview/ActionRules.json | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2019-05-05-preview/ActionRules.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2019-05-05-preview/ActionRules.json index 25123080680b..a441d6e0b967 100644 --- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2019-05-05-preview/ActionRules.json +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2019-05-05-preview/ActionRules.json @@ -850,15 +850,15 @@ "$ref": "#/definitions/ActionRuleProperties" }, { - "type": "object" - } - ], - "properties": { - "suppressionConfig": { - "description": "suppression configuration for the action rule", - "$ref": "#/definitions/SuppressionConfig" + "type": "object", + "properties": { + "suppressionConfig": { + "description": "suppression configuration for the action rule", + "$ref": "#/definitions/SuppressionConfig" + } + } } - } + ] }, "ActionGroup": { "title": "Action Group based Action Rule", @@ -871,15 +871,15 @@ "$ref": "#/definitions/ActionRuleProperties" }, { - "type": "object" - } - ], - "properties": { - "actionGroupId": { - "type": "string", - "description": "Action group to trigger if action rule matches" + "type": "object", + "properties": { + "actionGroupId": { + "type": "string", + "description": "Action group to trigger if action rule matches" + } + } } - } + ] }, "Diagnostics": { "title": "Diagnostics based Action Rule", From 05e595db6c02b0c29c1690bdc21633c1175e795c Mon Sep 17 00:00:00 2001 From: msyyc <70930885+msyyc@users.noreply.github.com> Date: Tue, 22 Sep 2020 15:46:19 +0800 Subject: [PATCH 23/37] .md for python (#10881) --- .../resource-manager/readme.md | 1 + .../resource-manager/readme.python.md | 34 +++++++++++++++---- 2 files changed, 29 insertions(+), 6 deletions(-) diff --git a/specification/baremetalinfrastructure/resource-manager/readme.md b/specification/baremetalinfrastructure/resource-manager/readme.md index 2efae511812e..a56160acb966 100644 --- a/specification/baremetalinfrastructure/resource-manager/readme.md +++ b/specification/baremetalinfrastructure/resource-manager/readme.md @@ -50,6 +50,7 @@ This is not used by Autorest itself. ```yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python + - repo: azure-sdk-for-python-track2 - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js diff --git a/specification/baremetalinfrastructure/resource-manager/readme.python.md b/specification/baremetalinfrastructure/resource-manager/readme.python.md index 4f59e49672a9..3048a78804d7 100644 --- a/specification/baremetalinfrastructure/resource-manager/readme.python.md +++ b/specification/baremetalinfrastructure/resource-manager/readme.python.md @@ -2,20 +2,42 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. +Use --python-mode=update if you already have a setup.py and just want to update the code itself. -```yaml $(python) +```yaml !$(track2) +python-mode: create python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.BareMetalInfrastructure - package-name: baremetalinfrastructure - package-version: 2020-08-06-preview + namespace: azure.mgmt.baremetalinfrastructure + package-name: azure-mgmt-baremetalinfrastructure + package-version: 0.1.0 clear-output-folder: true ``` -```yaml $(python) +These settings apply only when `--track2` is specified on the command line. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-baremetalinfrastructure +no-namespace-folders: true +package-version: 0.1.0 +``` + +``` yaml $(python-mode) == 'update' python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/baremetalinfrastructure + output-folder: $(python-sdks-folder)/baremetalinfrastructure/azure-mgmt-baremetalinfrastructure/azure/mgmt/baremetalinfrastructure +no-namespace-folders: true +output-folder: $(python-sdks-folder)/baremetalinfrastructure/azure-mgmt-baremetalinfrastructure/azure/mgmt/baremetalinfrastructure ``` + +``` yaml $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/baremetalinfrastructure/azure-mgmt-baremetalinfrastructure +basic-setup-py: true +output-folder: $(python-sdks-folder)/baremetalinfrastructure/azure-mgmt-baremetalinfrastructure +``` \ No newline at end of file From 421231a8e36c63b9c2d1a1692152b14ccf637cbf Mon Sep 17 00:00:00 2001 From: Ray Chen Date: Tue, 22 Sep 2020 19:32:48 +0800 Subject: [PATCH 24/37] Assignment config (#10850) * Add free-form object spec for testing purpose. * Revert "Add free-form object spec for testing purpose." This reverts commit b711d809b6ae964fcbe7d04f31fec76db8798438. * Add powerplatform assignment. --- .github/pull_request_assignment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/pull_request_assignment.yml b/.github/pull_request_assignment.yml index 6f86ab255279..abdb98fcfd0c 100644 --- a/.github/pull_request_assignment.yml +++ b/.github/pull_request_assignment.yml @@ -30,7 +30,7 @@ - yungezz - rule: - paths: "specification/resources/**" + paths: "specification/@(resources|powerplatform)/**" reviewers: - raych1 From 507dd9455810e1b3805f2b2ca4483e39559dad72 Mon Sep 17 00:00:00 2001 From: vikrampraveen Date: Tue, 22 Sep 2020 08:56:03 -0700 Subject: [PATCH 25/37] Bring up ACS eventgrid events swagger (#10880) * Add Communication Services Specifications * Remove Go code generation * Bring back AzureCommunicationServices swagger * Merge the swagger changes from feature/commununication Co-authored-by: Reza Jooyandeh Co-authored-by: Reza Jooyandeh Co-authored-by: Vikram Praveen Kumar --- custom-words.txt | 1 + .../AzureCommunicationServices.json | 350 ++++++++++++++++++ specification/eventgrid/data-plane/readme.md | 2 + 3 files changed, 353 insertions(+) create mode 100644 specification/eventgrid/data-plane/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json diff --git a/custom-words.txt b/custom-words.txt index 602c49385a73..6aa19385dc88 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -1955,6 +1955,7 @@ watchlist Watchlist Stix STIX +ACSSMS Mibps ntfs networkrulesets diff --git a/specification/eventgrid/data-plane/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json b/specification/eventgrid/data-plane/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json new file mode 100644 index 000000000000..8d83d520a87a --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json @@ -0,0 +1,350 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-01-01", + "title": "Schema of Azure Communication Services events published to Azure Event Grid", + "description": "Describes the schema of the Azure Communication Services events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent." + }, + "paths": {}, + "definitions": { + "ACSChatMessageReceivedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMessageReceived event.", + "allOf": [ + { + "$ref": "#/definitions/ACSChatMessageEventBaseProperties" + } + ], + "properties": { + "messageBody": { + "description": "The body of the chat message", + "type": "string" + } + } + }, + "ACSChatMessageEditedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMessageEdited event.", + "allOf": [ + { + "$ref": "#/definitions/ACSChatMessageEventBaseProperties" + } + ], + "properties": { + "messageBody": { + "description": "The body of the chat message", + "type": "string" + }, + "editTime": { + "description": "The time at which the message was edited", + "format": "date-time", + "type": "string" + } + } + }, + "ACSChatMessageDeletedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMessageDeleted event.", + "allOf": [ + { + "$ref": "#/definitions/ACSChatMessageEventBaseProperties" + } + ], + "properties": { + "deleteTime": { + "description": "The time at which the message was deleted", + "format": "date-time", + "type": "string" + } + } + }, + "ACSChatThreadCreatedWithUserEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadCreatedWithUser event.", + "allOf": [ + { + "$ref": "#/definitions/ACSChatThreadEventBaseProperties" + } + ], + "properties": { + "createdBy": { + "description": "The MRI of the creator of the thread", + "type": "string" + }, + "properties": { + "description": "The thread properties", + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "members": { + "description": "The list of properties of users who are part of the thread", + "type": "array", + "items": { + "$ref": "#/definitions/ACSChatThreadMemberProperties" + } + } + } + }, + "ACSChatThreadWithUserDeletedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadWithUserDeleted event.", + "allOf": [ + { + "$ref": "#/definitions/ACSChatThreadEventBaseProperties" + } + ], + "properties": { + "deletedBy": { + "description": "The MRI of the user who deleted the thread", + "type": "string" + }, + "deleteTime": { + "description": "The deletion time of the thread", + "format": "date-time", + "type": "string" + } + } + }, + "ACSChatThreadPropertiesUpdatedPerUserEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatThreadPropertiesUpdatedPerUser event.", + "allOf": [ + { + "$ref": "#/definitions/ACSChatThreadEventBaseProperties" + } + ], + "properties": { + "editedBy": { + "description": "The MRI of the user who updated the thread properties", + "type": "string" + }, + "editTime": { + "description": "The time at which the properties of the thread were updated", + "format": "date-time", + "type": "string" + }, + "properties": { + "description": "The updated thread properties", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "ACSChatMemberAddedToThreadWithUserEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMemberAddedToThreadWithUser event.", + "allOf": [ + { + "$ref": "#/definitions/ACSChatThreadEventBaseProperties" + } + ], + "properties": { + "time": { + "description": "The time at which the user was added to the thread", + "format": "date-time", + "type": "string" + }, + "addedBy": { + "description": "The MRI of the user who added the user", + "type": "string" + }, + "memberAdded": { + "description": "The details of the user who was added", + "$ref": "#/definitions/ACSChatThreadMemberProperties" + } + } + }, + "ACSChatMemberRemovedFromThreadWithUserEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.ChatMemberRemovedFromThreadWithUser event.", + "allOf": [ + { + "$ref": "#/definitions/ACSChatThreadEventBaseProperties" + } + ], + "properties": { + "time": { + "description": "The time at which the user was removed to the thread", + "format": "date-time", + "type": "string" + }, + "removedBy": { + "description": "The MRI of the user who removed the user", + "type": "string" + }, + "memberRemoved": { + "description": "The details of the user who was removed", + "$ref": "#/definitions/ACSChatThreadMemberProperties" + } + } + }, + "ACSSMSDeliveryReportReceivedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.SMSDeliveryReportReceived event.", + "allOf": [ + { + "$ref": "#/definitions/ACSSMSEventBaseProperties" + } + ], + "properties": { + "deliveryStatus": { + "description": "Status of Delivery", + "type": "string" + }, + "deliveryStatusDetails": { + "description": "Details about Delivery Status", + "type": "string" + }, + "deliveryAttempts": { + "description": "List of details of delivery attempts made", + "type": "array", + "items": { + "$ref": "#/definitions/ACSSMSDeliveryAttemptProperties" + } + }, + "receivedTimestamp": { + "description": "The time at which the SMS delivery report was received", + "format": "date-time", + "type": "string" + } + } + }, + "ACSSMSReceivedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.SMSReceived event.", + "allOf": [ + { + "$ref": "#/definitions/ACSSMSEventBaseProperties" + } + ], + "properties": { + "message": { + "description": "The SMS content", + "type": "string" + }, + "receivedTimestamp": { + "description": "The time at which the SMS was received", + "format": "date-time", + "type": "string" + } + } + }, + "ACSChatThreadEventBaseProperties": { + "description": "Schema of common properties of all chat thread events", + "allOf": [ + { + "$ref": "#/definitions/ACSChatEventBaseProperties" + } + ], + "properties": { + "createTime": { + "description": "The original creation time of the thread", + "format": "date-time", + "type": "string" + }, + "version": { + "description": "The version of the thread", + "type": "integer" + } + } + }, + "ACSChatMessageEventBaseProperties": { + "description": "Schema of common properties of all chat message events", + "allOf": [ + { + "$ref": "#/definitions/ACSChatEventBaseProperties" + } + ], + "properties": { + "messageId": { + "description": "The chat message id", + "type": "string" + }, + "senderId": { + "description": "The MRI of the sender", + "type": "string" + }, + "senderDisplayName": { + "description": "The display name of the sender", + "type": "string" + }, + "composeTime": { + "description": "The original compose time of the message", + "format": "date-time", + "type": "string" + }, + "type": { + "description": "The type of the message", + "type": "string" + }, + "version": { + "description": "The version of the message", + "type": "integer" + } + } + }, + "ACSChatEventBaseProperties": { + "description": "Schema of common properties of all chat events", + "type": "object", + "properties": { + "recipientId": { + "description": "The MRI of the target user", + "type": "string" + }, + "transactionId": { + "description": "The transaction id will be used as co-relation vector", + "type": "string" + }, + "threadId": { + "description": "The chat thread id", + "type": "string" + } + } + }, + "ACSChatThreadMemberProperties": { + "description": "Schema of the chat thread member", + "type": "object", + "properties": { + "displayName": { + "description": "The name of the user", + "type": "string" + }, + "memberId": { + "description": "The MRI of the user", + "type": "string" + } + } + }, + "ACSSMSEventBaseProperties": { + "description": "Schema of common properties of all SMS events", + "type": "object", + "properties": { + "messageId": { + "description": "The identity of the SMS message", + "type": "string" + }, + "from": { + "description": "The identity of SMS message sender", + "type": "string" + }, + "to": { + "description": "The identity of SMS message receiver", + "type": "string" + } + } + }, + "ACSSMSDeliveryAttemptProperties": { + "description": "Schema for details of a delivery attempt", + "type": "object", + "properties": { + "timestamp": { + "description": "TimeStamp when delivery was attempted", + "format": "date-time", + "type": "string" + }, + "segmentsSucceeded": { + "description": "Number of segments that were successfully delivered", + "type": "integer" + }, + "segmentsFailed": { + "description": "Number of segments whose delivery failed", + "type": "integer" + } + } + } + } +} diff --git a/specification/eventgrid/data-plane/readme.md b/specification/eventgrid/data-plane/readme.md index 05a8c882b111..744ddac3e43e 100644 --- a/specification/eventgrid/data-plane/readme.md +++ b/specification/eventgrid/data-plane/readme.md @@ -59,6 +59,7 @@ input-file: - Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json - Microsoft.Cache/stable/2018-01-01/RedisCache.json - Microsoft.Web/stable/2018-01-01/Web.json +- Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json ``` ### Suppression @@ -150,6 +151,7 @@ input-file: - $(this-folder)/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json - $(this-folder)/Microsoft.Cache/stable/2018-01-01/RedisCache.json - $(this-folder)/Microsoft.Web/stable/2018-01-01/Web.json + - $(this-folder)/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json ``` From 3791590b2d949657f3653ecd12b0172262c217bf Mon Sep 17 00:00:00 2001 From: kalyanrk61 Date: Tue, 22 Sep 2020 18:50:02 -0700 Subject: [PATCH 26/37] DataFactory: Update Rest Sink properties based on ship room comments. (#10815) * add rest sink swagger * update with shiproom comments Co-authored-by: Kalyan C Kesireddy --- .../stable/2018-06-01/entityTypes/Pipeline.json | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json index ea95f8ea806d..35aa8392c78c 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Pipeline.json @@ -2203,13 +2203,9 @@ "type": "object", "description": "The time to await before sending next request, in milliseconds " }, - "compressionType": { + "httpCompressionType": { "type": "object", - "description": "Compression Type to Send data in compressed format with Optimal Compression Level, Default is None. And The Only Supported option is Gzip. " - }, - "wrapRequestJsonInAnObject": { - "type": "object", - "description": "Wraps Request Array Json into an Object before calling the rest endpoint , Default is false. ex: if true request content sample format is { rows:[]} else the format is []" + "description": "Http Compression Type to Send data in compressed format with Optimal Compression Level, Default is None. And The Only Supported option is Gzip. " } } }, From a37acc947bd00f88e74b7f381be6ff962d65c4e8 Mon Sep 17 00:00:00 2001 From: Liran Chen <1437075+liranc@users.noreply.github.com> Date: Wed, 23 Sep 2020 05:10:46 +0300 Subject: [PATCH 27/37] [Hub Generated] Review request for Microsoft.Security to add version preview/2020-08-06-preview (#10773) * Add onPremiseSensors * Suppress * Specify file download schema * Fix validaiton Co-authored-by: Liran Chen --- .../IotSensors/DownloadActivation.json | 7 +- .../examples/IotSensors/List.json | 2 +- .../examples/OnPremiseIotSensors/Delete.json | 11 + .../DownloadActivation.json | 15 + .../examples/OnPremiseIotSensors/Get.json | 17 ++ .../examples/OnPremiseIotSensors/List.json | 26 ++ .../examples/OnPremiseIotSensors/Put.json | 25 ++ .../2020-08-06-preview/iotSensors.json | 11 +- .../onPremiseIotSensors.json | 283 ++++++++++++++++++ .../security/resource-manager/readme.md | 10 + 10 files changed, 403 insertions(+), 4 deletions(-) create mode 100644 specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Delete.json create mode 100644 specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/DownloadActivation.json create mode 100644 specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Get.json create mode 100644 specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/List.json create mode 100644 specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Put.json create mode 100644 specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/onPremiseIotSensors.json diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/IotSensors/DownloadActivation.json b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/IotSensors/DownloadActivation.json index 2aebd9e8ac3b..7274a7caecc6 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/IotSensors/DownloadActivation.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/IotSensors/DownloadActivation.json @@ -5,6 +5,11 @@ "iotSensorName": "mySensor" }, "responses": { - "200": {} + "200": { + "headers": { + "content-type": "application/zip" + }, + "body": "{Binary}" + } } } diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/IotSensors/List.json b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/IotSensors/List.json index b7e9675bad0d..576d3874d317 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/IotSensors/List.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/IotSensors/List.json @@ -15,7 +15,7 @@ }, { "name": "otherSensor", - "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/iotSensors/otherSensor", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/myHub/providers/Microsoft.Security/iotSensors/otherSensor", "type": "Microsoft.Security/iotSensors", "properties": {} } diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Delete.json b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Delete.json new file mode 100644 index 000000000000..21b5427051fc --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Delete.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-08-06-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "onPremiseIotSensorName": "mySensor" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/DownloadActivation.json b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/DownloadActivation.json new file mode 100644 index 000000000000..b2236a188f58 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/DownloadActivation.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-08-06-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "onPremiseIotSensorName": "mySensor" + }, + "responses": { + "200": { + "headers": { + "content-type": "application/zip" + }, + "body": "{Binary}" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Get.json b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Get.json new file mode 100644 index 000000000000..e504ee9a9086 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Get.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-08-06-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "onPremiseIotSensorName": "mySensor" + }, + "responses": { + "200": { + "body": { + "name": "mySensor", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/onPremiseIotSensors/mySensor", + "type": "Microsoft.Security/onPremiseIotSensors", + "properties": {} + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/List.json b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/List.json new file mode 100644 index 000000000000..f2536dd92897 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/List.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-08-06-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mySensor", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/iotSensors/mySensor", + "type": "Microsoft.Security/onPremiseIotSensors", + "properties": {} + }, + { + "name": "otherSensor", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/iotSensors/otherSensor", + "type": "Microsoft.Security/onPremiseIotSensors", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Put.json b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Put.json new file mode 100644 index 000000000000..80f3d877d6d4 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/examples/OnPremiseIotSensors/Put.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-08-06-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "onPremiseIotSensorName": "mySensor" + }, + "responses": { + "200": { + "body": { + "name": "mySensor", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/iotSensors/mySensor", + "type": "Microsoft.Security/onPremiseIotSensors", + "properties": {} + } + }, + "201": { + "body": { + "name": "mySensor", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/iotSensors/mySensor", + "type": "Microsoft.Security/onPremiseIotSensors", + "properties": {} + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/iotSensors.json b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/iotSensors.json index cad4e4eaf779..1f2aa771251f 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/iotSensors.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/iotSensors.json @@ -201,6 +201,9 @@ ], "operationId": "IotSensors_DownloadActivation", "description": "Download sensor activation file", + "produces": [ + "application/zip" + ], "parameters": [ { "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" @@ -214,7 +217,11 @@ ], "responses": { "200": { - "description": "Downloaded activation file" + "description": "Downloaded activation file", + "schema": { + "type": "object", + "format": "file" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -269,7 +276,7 @@ "in": "path", "required": true, "type": "string", - "description": "Scope of the query, can be subscription (/subscriptions/326b1ffa-8ac7-4034-8437-69bef733dede) or IoT Hub (/providers/Microsoft.Devices/iotHubs/myHub)", + "description": "Scope of the query (IoT Hub, /providers/Microsoft.Devices/iotHubs/myHub)", "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/onPremiseIotSensors.json b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/onPremiseIotSensors.json new file mode 100644 index 000000000000..87fa110c99d4 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2020-08-06-preview/onPremiseIotSensors.json @@ -0,0 +1,283 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-08-06-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/onPremiseIotSensors": { + "get": { + "x-ms-examples": { + "List on-premise IoT sensors": { + "$ref": "./examples/OnPremiseIotSensors/List.json" + } + }, + "tags": [ + "On-Premise IoT Sensors" + ], + "description": "List on-premise IoT sensors", + "operationId": "OnPremiseIotSensors_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OnPremiseIotSensorsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/onPremiseIotSensors/{onPremiseIotSensorName}": { + "get": { + "x-ms-examples": { + "Get on-premise IoT sensor": { + "$ref": "./examples/OnPremiseIotSensors/Get.json" + } + }, + "tags": [ + "On-Premise IoT Sensors" + ], + "operationId": "OnPremiseIotSensors_Get", + "description": "Get on-premise IoT sensor", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/OnPremiseIotSensorName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OnPremiseIotSensor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create or update on-premise IoT sensor": { + "$ref": "./examples/OnPremiseIotSensors/Put.json" + } + }, + "tags": [ + "On-Premise IoT Sensors" + ], + "operationId": "OnPremiseIotSensors_CreateOrUpdate", + "description": "Create or update on-premise IoT sensor", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/OnPremiseIotSensorName" + } + ], + "responses": { + "200": { + "description": "Updated on-premise IoT sensor", + "schema": { + "$ref": "#/definitions/OnPremiseIotSensor" + } + }, + "201": { + "description": "Created on-premise IoT sensor", + "schema": { + "$ref": "#/definitions/OnPremiseIotSensor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete on-premise IoT sensor": { + "$ref": "./examples/OnPremiseIotSensors/Delete.json" + } + }, + "tags": [ + "On-Premise IoT Sensors" + ], + "operationId": "OnPremiseIotSensors_Delete", + "description": "Delete on-premise IoT sensor", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/OnPremiseIotSensorName" + } + ], + "responses": { + "200": { + "description": "Deleted on-premise IoT sensor" + }, + "204": { + "description": "On-premise IoT sensor does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/onPremiseIotSensors/{onPremiseIotSensorName}/downloadActivation": { + "post": { + "x-ms-examples": { + "Download activation file": { + "$ref": "./examples/OnPremiseIotSensors/DownloadActivation.json" + } + }, + "tags": [ + "On-Premise IoT Sensors" + ], + "operationId": "OnPremiseIotSensors_DownloadActivation", + "description": "Download sensor activation file", + "produces": [ + "application/zip" + ], + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/OnPremiseIotSensorName" + } + ], + "responses": { + "200": { + "description": "Downloaded activation file", + "schema": { + "type": "object", + "format": "file" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "OnPremiseIotSensorsList": { + "description": "List of on-premise IoT sensors", + "type": "object", + "properties": { + "value": { + "description": "List data", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/OnPremiseIotSensor" + } + } + } + }, + "OnPremiseIotSensor": { + "type": "object", + "description": "On-premise IoT sensor", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "On-premise IoT sensor properties", + "$ref": "#/definitions/OnPremiseIotSensorProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "OnPremiseIotSensorProperties": { + "type": "object", + "description": "On-premise IoT sensor properties", + "properties": {} + } + }, + "parameters": { + "OnPremiseIotSensorName": { + "name": "onPremiseIotSensorName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the on-premise IoT sensor", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/readme.md b/specification/security/resource-manager/readme.md index a05992d01aef..87e3b6b42e5f 100644 --- a/specification/security/resource-manager/readme.md +++ b/specification/security/resource-manager/readme.md @@ -52,6 +52,14 @@ directive: from: iotSensors.json where: '$.paths["/{scope}/providers/Microsoft.Security/iotSensors/{iotSensorName}"].get' reason: The list returns limited number of items + - suppress: PageableOperation + from: onPremiseIotSensors.json + where: '$.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Security/onPremiseIotSensors"].get' + reason: The list returns limited number of items + - suppress: TopLevelResourcesListByResourceGroup + from: onPremiseIotSensors.json + where: $.definitions.OnPremiseIotSensor + reason: The resource is managed in a subscription level (instead of inside a resource group) ``` ### Basic Information @@ -195,6 +203,7 @@ input-file: - Microsoft.Security/preview/2020-01-01-preview/connectors.json - Microsoft.Security/preview/2020-08-06-preview/iotDefenderSettings.json - Microsoft.Security/preview/2020-08-06-preview/iotSensors.json +- Microsoft.Security/preview/2020-08-06-preview/onPremiseIotSensors.json # Needed when there is more than one input file override-info: @@ -380,6 +389,7 @@ These settings apply only when `--tag=package-2020-08-preview-only` is specified input-file: - Microsoft.Security/preview/2020-08-06-preview/iotDefenderSettings.json - Microsoft.Security/preview/2020-08-06-preview/iotSensors.json +- Microsoft.Security/preview/2020-08-06-preview/onPremiseIotSensors.json # Needed when there is more than one input file override-info: From ededa408913291dc1f0b3f8e812d2c90de203af6 Mon Sep 17 00:00:00 2001 From: Lei Ni <7233663+leni-msft@users.noreply.github.com> Date: Wed, 23 Sep 2020 11:11:08 +0800 Subject: [PATCH 28/37] Add readme.azureresourceschema.md for sample rp (#10764) --- .../samplefiles/readme.azureresourceschema.md | 24 +++++++++++++++++++ documentation/samplefiles/samplereadme.md | 7 ++++++ 2 files changed, 31 insertions(+) create mode 100644 documentation/samplefiles/readme.azureresourceschema.md diff --git a/documentation/samplefiles/readme.azureresourceschema.md b/documentation/samplefiles/readme.azureresourceschema.md new file mode 100644 index 000000000000..819cac202170 --- /dev/null +++ b/documentation/samplefiles/readme.azureresourceschema.md @@ -0,0 +1,24 @@ +## AzureResourceSchema + +These settings apply only when `--azureresourceschema` is specified on the command line. + +### AzureResourceSchema multi-api + +``` yaml $(azureresourceschema) && $(multiapi) +batch: + - tag: schema-yourservicename-YYYY-MM-DD + +``` + +Please also specify `--azureresourceschema-folder=`. + +### Tag: schema-yourservicename-YYYY-MM-DD and azureresourceschema + +``` yaml $(tag) == 'schema-yourservicename-YYYY-MM-DD' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.YourServiceName/stable/YYYY-MM-DD/YourServiceName.json + +``` diff --git a/documentation/samplefiles/samplereadme.md b/documentation/samplefiles/samplereadme.md index f76fab965fc8..af02111a6c18 100644 --- a/documentation/samplefiles/samplereadme.md +++ b/documentation/samplefiles/samplereadme.md @@ -56,6 +56,9 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_YourServiceName'] + - repo: azure-resource-manager-schemas + after_scripts: + - node sdkauto_afterscript.js yourservicename/resource-manager ``` ## Go @@ -77,3 +80,7 @@ See configuration in [readme.typescript.md](https://github.com/Azure/azure-rest- ## CSharp See configuration in [readme.csharp.md](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/samplefiles/readme.chsarp.md) + +## AzureResourceSchema + +See configuration in [readme.azureresourceschema.md](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/samplefiles/readme.azureresourceschema.md) From dedd0efe5eb92257c3fcdb7b1aa18ef00cd6ea7c Mon Sep 17 00:00:00 2001 From: Moshe Malka Date: Wed, 23 Sep 2020 06:16:04 +0300 Subject: [PATCH 29/37] [Hub Generated] Review request for Microsoft.Insights to add version preview/2020-05-01-preview (#10891) * change enum operator and failingPeriods type * add 2020-05-preview Co-authored-by: Moshe Malka --- .../scheduledQueryRule_API.json | 12 ++++++++---- .../monitor/resource-manager/readme.python.md | 15 +++++++++++++++ 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json index 278a0a1a97ce..6d30d3fa0ac5 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json @@ -511,7 +511,7 @@ "LessThanOrEqual" ], "x-ms-enum": { - "name": "Operator", + "name": "conditionOperator", "modelAsString": true }, "description": "The criteria operator." @@ -526,11 +526,15 @@ "description": "The minimum number of violations required within the selected lookback time window required to raise an alert.", "properties": { "numberOfEvaluationPeriods": { - "type": "number", + "type": "integer", + "format": "int64", + "default": 1, "description": "The number of aggregated lookback points. The lookback time window is calculated based on the aggregation granularity (windowSize) and the selected number of aggregated points. Default value is 1" }, "minFailingPeriodsToAlert": { - "type": "number", + "type": "integer", + "format": "int64", + "default": 1, "description": "The number of violations to trigger an alert. Should be smaller or equal to numberOfEvaluationPeriods. Default value is 1" } } @@ -558,7 +562,7 @@ "Exclude" ], "x-ms-enum": { - "name": "operator", + "name": "dimensionOperator", "modelAsString": true } }, diff --git a/specification/monitor/resource-manager/readme.python.md b/specification/monitor/resource-manager/readme.python.md index 8d483156a925..92a777c5f250 100644 --- a/specification/monitor/resource-manager/readme.python.md +++ b/specification/monitor/resource-manager/readme.python.md @@ -30,6 +30,7 @@ Generate all API versions currently shipped for this package ```yaml $(multiapi) && !$(track2) batch: + - tag: package-2020-05-preview - tag: package-2020-01-01-preview-only - tag: package-2019-10-17-preview-only - tag: package-2019-06-01-only @@ -54,6 +55,7 @@ batch: ```yaml $(multiapi) && $(track2) clear-output-folder: true batch: + - tag: package-2020-05-preview - tag: package-2020-01-01-preview-only - tag: package-2019-10-17-preview-only - tag: package-2019-06-01-only @@ -82,6 +84,19 @@ clear-output-folder: false perform-load: false ``` +### Tag: package-2020-05-preview and python + +These settings apply only when `--tag=package-2020-05-preview --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-05-preview' +namespace: $(python-base-namespace).v2020_05_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2020_05_01_preview +python: + namespace: $(python-base-namespace).v2020_05_01_preview + output-folder: $(python-sdks-folder)/$(python-base-folder)/v2020_05_01_preview +``` + ### Tag: package-2020-01-01-preview-only and python These settings apply only when `--tag=package-2020-01-01-preview-only --python` is specified on the command line. From 48fcff7c0388a10ad94d2f4293abde7f72686091 Mon Sep 17 00:00:00 2001 From: Sebastian Herzig-Patel Date: Tue, 22 Sep 2020 20:37:54 -0700 Subject: [PATCH 30/37] [Hub Generated] Review request for Microsoft.DigitalTwins to add version stable/2020-10-31 (#10902) * Fix code generation issue * Resolved merge conflict --- .../Microsoft.DigitalTwins/stable/2020-10-31/digitaltwins.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/stable/2020-10-31/digitaltwins.json b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/stable/2020-10-31/digitaltwins.json index a649d243d702..a0d33dd14c94 100644 --- a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/stable/2020-10-31/digitaltwins.json +++ b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/stable/2020-10-31/digitaltwins.json @@ -895,6 +895,7 @@ "ExternalResource": { "description": "Definition of a resource.", "type": "object", + "x-ms-azure-resource": true, "properties": { "id": { "readOnly": true, @@ -916,7 +917,6 @@ }, "DigitalTwinsEndpointResource": { "description": "DigitalTwinsInstance endpoint resource.", - "x-ms-azure-resource": true, "allOf": [ { "$ref": "#/definitions/ExternalResource" From ac98b0ee99b7650031d4df43eb9e999aa200d3aa Mon Sep 17 00:00:00 2001 From: Lei Ni <7233663+leni-msft@users.noreply.github.com> Date: Wed, 23 Sep 2020 13:29:10 +0800 Subject: [PATCH 31/37] Update SDKAutomation.yml for Azure Pipelines (#10904) * Update SDKAutomation.yml for Azure Pipelines * Update SDKAutomation.yml for Azure Pipelines * Update SDKAutomation.yml for Azure Pipelines * Update SDKAutomation.yml for Azure Pipelines * Update SDKAutomation.yml for Azure Pipelines * Update SDKAutomation.yml for Azure Pipelines * Update SDKAutomation.yml for Azure Pipelines * Update SDKAutomation.yml for Azure Pipelines --- .azure-pipelines/SDKAutomation.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.azure-pipelines/SDKAutomation.yml b/.azure-pipelines/SDKAutomation.yml index a567d468ab0b..982a0fd77d77 100644 --- a/.azure-pipelines/SDKAutomation.yml +++ b/.azure-pipelines/SDKAutomation.yml @@ -41,9 +41,8 @@ jobs: SDK_REPO_NAME: azure-sdk-for-go Trenton: SDK_REPO_NAME: azure-sdk-for-trenton - ${{ if eq(variables['ENABLE_RESOURCE_MANAGER_SCHEMAS'], 'true') }}: - Schema: - SDK_REPO_NAME: azure-resource-manager-schemas + Schema: + SDK_REPO_NAME: azure-resource-manager-schemas steps: - checkout: none - script: | @@ -80,6 +79,7 @@ jobs: -e AZURE_DEVOPS_EXT_PAT \ -e BUILD_ID \ sdk-automation:latest npm start + condition: or(ne(variables['SDK_REPO_NAME'], 'azure-resource-manager-schemas'), endsWith(variables['SPEC_REPO'], '/azure-rest-api-specs')) env: BLOB_STORAGE_NAME: $(blob-storage-name) BLOB_STORAGE_KEY: $(blob-storage-key) From 7a555b82850876e8cc5c0f51ec52585913da8e6f Mon Sep 17 00:00:00 2001 From: hohershk <58219337+hohershk@users.noreply.github.com> Date: Wed, 23 Sep 2020 08:43:23 +0300 Subject: [PATCH 32/37] Operationalinsights/data export delete all tables param (#10775) * microsoft.operationalinsights_add_data_export * fix * fix * delete_unneeded_property Co-authored-by: Hodaya Hershkovich --- .../2019-08-01-preview/examples/DataExportCreateOrUpdate.json | 1 - .../preview/2019-08-01-preview/examples/DataExportGet.json | 1 - .../examples/DataExportListByWorkspace.json | 1 - .../preview/2020-03-01-preview/DataExports.json | 4 ---- .../2020-03-01-preview/examples/DataExportCreateOrUpdate.json | 2 -- .../preview/2020-03-01-preview/examples/DataExportGet.json | 1 - .../examples/DataExportListByWorkspace.json | 1 - 7 files changed, 11 deletions(-) diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportCreateOrUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportCreateOrUpdate.json index f738632a370c..00e71ce6ab28 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportCreateOrUpdate.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportCreateOrUpdate.json @@ -25,7 +25,6 @@ "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", "type": "EventHub" }, - "allTables": false, "tableNames": [ "Heartbeat" ], diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportGet.json index aee7dba8ecfb..472297024e2b 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportGet.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportGet.json @@ -15,7 +15,6 @@ "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", "type": "EventHub" }, - "allTables": false, "tableNames": [ "Heartbeat" ], diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportListByWorkspace.json index 4d0a89e0b861..0d01e4a909c9 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportListByWorkspace.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportListByWorkspace.json @@ -15,7 +15,6 @@ "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", "type": "EventHub" }, - "allTables": false, "tableNames": [ "Heartbeat" ], diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json index d776e4a1ff24..4ca8b68ce1a2 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json @@ -276,10 +276,6 @@ "type": "string", "description": "The data export rule ID." }, - "allTables": { - "type": "boolean", - "description": "When ‘true’, all workspace's tables are exported." - }, "tableNames": { "type": "array", "items": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportCreateOrUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportCreateOrUpdate.json index 413c8a0480bf..02b00dbe7a71 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportCreateOrUpdate.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportCreateOrUpdate.json @@ -25,7 +25,6 @@ "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", "type": "EventHub" }, - "allTables": false, "tableNames": [ "Heartbeat" ], @@ -46,7 +45,6 @@ "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", "type": "EventHub" }, - "allTables": false, "tableNames": [ "Heartbeat" ], diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportGet.json index 0bb0b00f44b5..1be2c0459fea 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportGet.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportGet.json @@ -15,7 +15,6 @@ "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", "type": "EventHub" }, - "allTables": false, "tableNames": [ "Heartbeat" ], diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportListByWorkspace.json index acec03e93f8a..df13cd8a8444 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportListByWorkspace.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportListByWorkspace.json @@ -16,7 +16,6 @@ "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", "type": "EventHub" }, - "allTables": false, "tableNames": [ "Heartbeat" ], From 0107a840ba2826d50e19283f7d82766ab5121cc6 Mon Sep 17 00:00:00 2001 From: Junyang Chen Date: Tue, 22 Sep 2020 22:58:51 -0700 Subject: [PATCH 33/37] Add location info for cross region compute feature (#10816) --- .../machineLearningServices.json | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json index dc61a4cb656b..3c283424747c 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json @@ -2249,6 +2249,11 @@ "type": "string", "description": "Specifies the resource ID." }, + "amlWorkspaceLocation": { + "readOnly": true, + "type": "string", + "description": "Region of the AML workspace in the id." + }, "type": { "readOnly": true, "type": "string", @@ -2524,6 +2529,10 @@ "items": { "$ref": "#/definitions/QuotaBaseProperties" } + }, + "location": { + "description": "Region of workspace quota to be updated.", + "type": "string" } }, "description": "Quota update parameters." @@ -2621,6 +2630,11 @@ "type": "string", "description": "Specifies the resource ID." }, + "amlWorkspaceLocation": { + "readOnly": true, + "type": "string", + "description": "Region of the AML workspace in the id." + }, "type": { "readOnly": true, "type": "string", From 88e86e706ad26f3c7efa7a913977e651150f0f3b Mon Sep 17 00:00:00 2001 From: Arcturus Date: Wed, 23 Sep 2020 14:17:02 +0800 Subject: [PATCH 34/37] Add api-version of 2019-10-01/comsuption to go SDK (#10749) --- specification/consumption/resource-manager/readme.go.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/specification/consumption/resource-manager/readme.go.md b/specification/consumption/resource-manager/readme.go.md index 2cd5284033ad..a0de97215d8d 100644 --- a/specification/consumption/resource-manager/readme.go.md +++ b/specification/consumption/resource-manager/readme.go.md @@ -22,8 +22,17 @@ batch: - tag: package-2018-08 - tag: package-2018-10 - tag: package-2019-01 + - tag: package-2019-10 ``` +### Tag: package-2019-10 and go + +These settings apply only when `--tag=package-2019-10 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-10' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-10-01/$(namespace) +``` ### Tag: package-2017-04-preview and go From 7e631da3d3b1c572c0d7b76c89855d7a8e72fa92 Mon Sep 17 00:00:00 2001 From: Braden Watkins Date: Tue, 22 Sep 2020 23:24:35 -0700 Subject: [PATCH 35/37] Add documentation for downloading invoices through Microsoft.Billing API (#10585) - 2019-10-01-preview - POST Multiple Modern Invoice Download - 2019-10-01-preview - POST Multiple EA Invoice Download - 2019-10-01-preview - POST Multiple Legacy Invoice Download - 2019-10-01-preview - Changed ErrorResponse and ErrorDetails - 2020-05-01 - POST Multiple Invoice Download (Modern & EA) - 2020-05-01 - POST Multiple Legacy Invoice Download - 2020-05-01 - Changed ErrorResponse and ErrorDetails Co-authored-by: Braden Watkins --- .../preview/2018-03-01-preview/billingV2.json | 28 +++ .../preview/2019-10-01-preview/billing.json | 235 ++++++++++++++++++ ...pleBillingSubscriptionInvoiceDownload.json | 24 ++ .../examples/MultipleInvoiceDownload.json | 24 ++ .../MultipleModernInvoiceDownload.json | 25 ++ .../stable/2020-05-01/billing.json | 166 ++++++++++++- .../BillingSubscriptionInvoiceDownload.json | 2 +- ...wnload.json => ModernInvoiceDownload.json} | 2 +- ...pleBillingSubscriptionInvoiceDownload.json | 24 ++ .../MultipleModernInvoiceDownload.json | 24 ++ 10 files changed, 551 insertions(+), 3 deletions(-) create mode 100644 specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleBillingSubscriptionInvoiceDownload.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleInvoiceDownload.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleModernInvoiceDownload.json rename specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/{InvoiceDownload.json => ModernInvoiceDownload.json} (83%) create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/MultipleBillingSubscriptionInvoiceDownload.json create mode 100644 specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/MultipleModernInvoiceDownload.json diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/billingV2.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/billingV2.json index e9b752a24fda..a4b03809ce4f 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/billingV2.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-03-01-preview/billingV2.json @@ -322,6 +322,11 @@ "description": "The target of the particular error.", "type": "string", "readOnly": true + }, + "details": { + "description": "The sub details of the error.", + "readOnly": true, + "$ref": "#/definitions/ErrorSubDetails" } } }, @@ -335,6 +340,29 @@ } } }, + "ErrorSubDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + } + }, "Resource": { "description": "The Resource model definition.", "properties": { diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json index 680b35022642..2f6b7a0b47ad 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/billing.json @@ -1685,6 +1685,74 @@ } } }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/downloadDocuments": { + "post": { + "tags": [ + "Invoices" + ], + "x-ms-examples": { + "InvoiceDownload": { + "$ref": "./examples/MultipleInvoiceDownload.json" + } + }, + "operationId": "Invoices_DownloadMultipleEAInvoice", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "description": "Gets a URL to download an multiple invoices documents (invoice pdf, tax receipts, credit notes) as a zip file.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "name": "downloadUrls", + "in": "body", + "required": true, + "description": "An array of download urls for individual documents. The download url paths in the request body should match the path of the original request.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "202": { + "description": "Accepted.", + "headers": { + "Location": { + "description": "GET this URL to retrieve the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "type": "string" + } + } + }, + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DownloadUrl" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}": { "get": { "tags": [ @@ -1724,6 +1792,74 @@ } } }, + "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/downloadDocuments": { + "post": { + "tags": [ + "Invoices" + ], + "x-ms-examples": { + "BillingSubscriptionInvoiceDownload": { + "$ref": "./examples/MultipleBillingSubscriptionInvoiceDownload.json" + } + }, + "operationId": "Invoices_DownloadMultipleBillingSubscriptionInvoice", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "description": "Gets a URL to download multiple invoices documents (invoice pdf, tax receipts, credit notes) as a zip file.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "name": "downloadUrls", + "in": "body", + "required": true, + "description": "An array of download urls for individual documents. The download url paths in the request body should match the path of the original request.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "202": { + "description": "Accepted.", + "headers": { + "Location": { + "description": "GET this URL to retrieve the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "type": "string" + } + } + }, + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DownloadUrl" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoices/{invoiceName}/pricesheet/default/download": { "post": { "tags": [ @@ -1900,6 +2036,77 @@ } } }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/downloadDocuments": { + "post": { + "tags": [ + "Invoices" + ], + "x-ms-examples": { + "ModernInvoiceDownload": { + "$ref": "./examples/MultipleModernInvoiceDownload.json" + } + }, + "operationId": "Invoices_DownloadMultipleModernInvoice", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "description": "Gets a URL to download multiple invoices documents (invoice pdf, tax receipts, credit notes) as a zip file.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "name": "downloadUrls", + "in": "body", + "required": true, + "description": "An array of download urls for individual documents. The download url paths in the request body should match the path of the original request.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "202": { + "description": "Accepted.", + "headers": { + "Location": { + "description": "GET this URL to retrieve the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "type": "string" + } + } + }, + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DownloadUrl" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoices/{invoiceName}": { "get": { "tags": [ @@ -7004,6 +7211,11 @@ "description": "The target of the particular error.", "type": "string", "readOnly": true + }, + "details": { + "description": "The sub details of the error.", + "readOnly": true, + "$ref": "#/definitions/ErrorSubDetails" } } }, @@ -7017,6 +7229,29 @@ } } }, + "ErrorSubDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + } + }, "Reseller": { "description": "Details of the reseller.", "properties": { diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleBillingSubscriptionInvoiceDownload.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleBillingSubscriptionInvoiceDownload.json new file mode 100644 index 000000000000..a810e1a7775d --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleBillingSubscriptionInvoiceDownload.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "{subscriptionId}", + "downloadUrls": [ + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2019-10-01-preview", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2019-10-01-preview", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2019-10-01-preview" + ] + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/operationResults/invoiceDownload_{operationId}?api-version=2019-10-01-preview", + "Retry-After": "10" + } + }, + "200": { + "body": { + "url": "https://myaccount.blob.core.windows.net/invoices/1383724.pdf?sv=2019-02-02&sr=b&sig=sp=r" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleInvoiceDownload.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleInvoiceDownload.json new file mode 100644 index 000000000000..bd9e7f59f578 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleInvoiceDownload.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "billingAccountName": "{billingAccountName}", + "downloadUrls": [ + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2019-10-01-preview", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2019-10-01-preview", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2019-10-01-preview" + ] + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/operationResults/invoiceDownload_{operationId}?api-version=2019-10-01-preview", + "Retry-After": "10" + } + }, + "200": { + "body": { + "url": "https://myaccount.blob.core.windows.net/invoices/1383724.pdf?sv=2019-02-02&sr=b&sp=r" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleModernInvoiceDownload.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleModernInvoiceDownload.json new file mode 100644 index 000000000000..cafb3e2cbaa7 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/MultipleModernInvoiceDownload.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "billingAccountName": "{billingAccountName}", + "billingProfileName": "{billingProfileName}", + "downloadUrls": [ + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}billingProfiles/{billingProfileName}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2019-10-01-preview", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}billingProfiles/{billingProfileName}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2019-10-01-preview", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}billingProfiles/{billingProfileName}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2019-10-01-preview" + ] + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}billingProfiles/{billingProfileName}/invoices/{invoiceName}/operationResults/invoiceDownload_{operationId}?api-version=2019-10-01-preview", + "Retry-After": "10" + } + }, + "200": { + "body": { + "url": "https://myaccount.blob.core.windows.net/invoices/1383724.pdf?sv=2019-02-02&sr=b&sp=r" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/billing.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/billing.json index fecbec2a08c9..65048a244a9f 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/billing.json +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/billing.json @@ -1274,7 +1274,7 @@ ], "x-ms-examples": { "InvoiceDownload": { - "$ref": "./examples/InvoiceDownload.json" + "$ref": "./examples/ModernInvoiceDownload.json" } }, "operationId": "Invoices_DownloadInvoice", @@ -1333,6 +1333,74 @@ } } }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/downloadDocuments": { + "post": { + "tags": [ + "Invoices" + ], + "x-ms-examples": { + "InvoiceDownload": { + "$ref": "./examples/MultipleModernInvoiceDownload.json" + } + }, + "operationId": "Invoices_DownloadMultipleModernInvoice", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "description": "Gets a URL to download an multiple invoices documents (invoice pdf, tax receipts, credit notes) as a zip file. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "name": "downloadUrls", + "in": "body", + "required": true, + "description": "An array of download urls for individual documents", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "202": { + "description": "Accepted.", + "headers": { + "Location": { + "description": "GET this URL to retrieve the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "type": "string" + } + } + }, + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DownloadUrl" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingSubscriptions": { "get": { "tags": [ @@ -1539,6 +1607,74 @@ } } }, + "/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/downloadDocuments": { + "post": { + "tags": [ + "Invoices" + ], + "x-ms-examples": { + "BillingSubscriptionInvoiceDownload": { + "$ref": "./examples/MultipleBillingSubscriptionInvoiceDownload.json" + } + }, + "operationId": "Invoices_DownloadMultipleBillingSubscriptionInvoice", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "description": "Gets a URL to download multiple invoices documents (invoice pdf, tax receipts, credit notes) as a zip file.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "name": "downloadUrls", + "in": "body", + "required": true, + "description": "An array of download urls for individual documents", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "202": { + "description": "Accepted.", + "headers": { + "Location": { + "description": "GET this URL to retrieve the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "type": "string" + } + } + }, + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DownloadUrl" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/billingSubscriptions": { "get": { "tags": [ @@ -4615,6 +4751,11 @@ "description": "The target of the particular error.", "type": "string", "readOnly": true + }, + "details": { + "description": "The sub details of the error.", + "readOnly": true, + "$ref": "#/definitions/ErrorSubDetails" } } }, @@ -4628,6 +4769,29 @@ } } }, + "ErrorSubDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + } + }, "Reseller": { "description": "Details of the reseller.", "properties": { diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/BillingSubscriptionInvoiceDownload.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/BillingSubscriptionInvoiceDownload.json index 226bfa9ef63e..1d2f434b068d 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/BillingSubscriptionInvoiceDownload.json +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/BillingSubscriptionInvoiceDownload.json @@ -8,7 +8,7 @@ "responses": { "202": { "headers": { - "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/11000000-0000-0000-0000-000000000000/operationResults/invoiceDownload_11000000-0000-0000-0000-000000000000?api-version=2020-05-01", + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/operationResults/invoiceDownload_{operationId}?api-version=2020-05-01", "Retry-After": "10" } }, diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/InvoiceDownload.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/ModernInvoiceDownload.json similarity index 83% rename from specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/InvoiceDownload.json rename to specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/ModernInvoiceDownload.json index 9bf994a947cb..38774eb60736 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/InvoiceDownload.json +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/ModernInvoiceDownload.json @@ -8,7 +8,7 @@ "responses": { "202": { "headers": { - "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/operationResults/invoiceDownload_11000000-0000-0000-0000-000000000000?api-version=2020-05-01", + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/operationResults/invoiceDownload_{operationId}?api-version=2020-05-01", "Retry-After": "10" } }, diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/MultipleBillingSubscriptionInvoiceDownload.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/MultipleBillingSubscriptionInvoiceDownload.json new file mode 100644 index 000000000000..00c11b106f6a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/MultipleBillingSubscriptionInvoiceDownload.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "subscriptionId": "{subscriptionId}", + "downloadUrls": [ + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2020-05-01", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2020-05-01", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2020-05-01" + ] + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/default/billingSubscriptions/{subscriptionId}/operationResults/invoiceDownload_{operationId}?api-version=2020-05-01", + "Retry-After": "10" + } + }, + "200": { + "body": { + "url": "https://myaccount.blob.core.windows.net/invoices/1383724.pdf?sv=2019-02-02&sr=b&sp=r" + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/MultipleModernInvoiceDownload.json b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/MultipleModernInvoiceDownload.json new file mode 100644 index 000000000000..209820727664 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/stable/2020-05-01/examples/MultipleModernInvoiceDownload.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-05-01", + "billingAccountName": "{billingAccountName}", + "downloadUrls": [ + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2020-05-01", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2020-05-01", + "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoices/{invoiceName}/download?downloadToken={downloadToken}&useCache=True&api-version=2020-05-01" + ] + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/operationResults/invoiceDownload_{operationId}?api-version=2020-05-01", + "Retry-After": "10" + } + }, + "200": { + "body": { + "url": "https://myaccount.blob.core.windows.net/invoices/1383724.pdf?sv=2019-02-02&sr=b&sp=r" + } + } + } +} From cddb8f03f061c59fe383f21b0095d9f3e08900b8 Mon Sep 17 00:00:00 2001 From: zhaomuzhi Date: Tue, 22 Sep 2020 23:27:58 -0700 Subject: [PATCH 36/37] [Do Not Merge][Really To Review] add a new apis (#10756) * Add Identity to createWorkpace example * change for getTransitivePEUsages * update * prettier code * add another new endpoint * address comments --- custom-words.txt | 1 + .../examples/getTransitivePEUsages.json | 26 +++ .../examples/listWorkspaceNotebookKeys.json | 16 ++ .../machineLearningServices.json | 171 ++++++++++++++++++ 4 files changed, 214 insertions(+) create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/getTransitivePEUsages.json create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/listWorkspaceNotebookKeys.json diff --git a/custom-words.txt b/custom-words.txt index 6aa19385dc88..85475fa43129 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -1684,6 +1684,7 @@ tráfico transcoding transcodes transcriptmoderationresult +transitivepeusages translatortext trendingtopics triggeredwebjobs diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/getTransitivePEUsages.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/getTransitivePEUsages.json new file mode 100644 index 000000000000..b37c57afc17c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/getTransitivePEUsages.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-09-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "transitivePrivateEndpointsUsage": { + "totalUsage": 0 + }, + "transitivePrivateEndpointsQuota": 0, + "privateDnsZonesUsage": { + "totalUsage": 0 + }, + "privateDnsZonesQuota": 0 + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/listWorkspaceNotebookKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/listWorkspaceNotebookKeys.json new file mode 100644 index 000000000000..4182751f0f91 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/listWorkspaceNotebookKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-09-01-preview" + }, + "responses": { + "200": { + "body": { + "primaryAccessKey": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw", + "secondaryAccessKey": "0KARRQoQHSUq1yViPWg7YFernOS" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json index 3c283424747c..7154aa1b18b3 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json @@ -349,6 +349,48 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listNotebookKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Lists notebook keys associated with this workspace. The notebook keys are used for loading notebook components, which a reader should have access to. So make it a Get, not Post call", + "operationId": "Workspaces_ListNotebookKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listWorkspaceNotebookKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/NotebookListCredentialsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { "post": { "tags": [ @@ -430,6 +472,53 @@ } } }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/transitivepeusages": { + "get": { + "tags": [ + "TransitivePEUsage" + ], + "operationId": "TransitivePEUsage_Get", + "description": "Gets the current transitive private endpoint usage information as well as limits for AML resources for given subscription and location.", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListTransitivePEUsagesResult" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "Get Transitive PE Usages": { + "$ref": "./examples/getTransitivePEUsages.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { "get": { "tags": [ @@ -2291,6 +2380,77 @@ }, "description": "Describes AML Resource Usage." }, + "TransitivePEUsage": { + "type": "object", + "properties": { + "totalUsage": { + "readOnly": true, + "format": "int32", + "type": "integer" + } + } + }, + "PrivateDNSZoneUsage": { + "type": "object", + "properties": { + "totalUsage": { + "readOnly": true, + "format": "int32", + "type": "integer" + } + } + }, + "TransitivePEUsagesResult": { + "type": "object", + "description": "The transitive private endpoint usage in this location", + "properties": { + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "Subscription id that the transitive private endpoint usage is measured." + }, + "transitivePrivateEndpointsUsage": { + "readOnly": true, + "description": "Transitive private endpoint usage", + "$ref": "#/definitions/TransitivePEUsage" + }, + "transitivePrivateEndpointsQuota": { + "readOnly": true, + "description": "Transitive private endpoint quota that currently set", + "format": "int32", + "type": "integer" + }, + "privateDnsZonesUsage": { + "readOnly": true, + "description": "Private DNS zone usage", + "$ref": "#/definitions/PrivateDNSZoneUsage" + }, + "privateDnsZonesQuota": { + "readOnly": true, + "description": "Private Dns Zones quota that currently set", + "format": "int32", + "type": "integer" + } + } + }, + "ListTransitivePEUsagesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TransitivePEUsagesResult" + }, + "description": "The list of transitive private endpoint usages." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of transitive private endpoint usages information. Call ListNext() with this to fetch the next page of AML resource usage information." + } + }, + "description": "The List transitive private endpoint usages operation response." + }, "ListUsagesResult": { "properties": { "value": { @@ -2798,6 +2958,17 @@ "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", "x-ms-azure-resource": true }, + "NotebookListCredentialsResult": { + "type": "object", + "properties": { + "primaryAccessKey": { + "type": "string" + }, + "secondaryAccessKey": { + "type": "string" + } + } + }, "ListWorkspaceKeysResult": { "type": "object", "properties": { From 4e0c86991df0089597a58cf92823d57c2efa9d36 Mon Sep 17 00:00:00 2001 From: Arcturus Date: Wed, 23 Sep 2020 14:50:54 +0800 Subject: [PATCH 37/37] Revert "[Do Not Merge][Really To Review] add a new apis (#10756)" (#10908) This reverts commit cddb8f03f061c59fe383f21b0095d9f3e08900b8. --- custom-words.txt | 1 - .../examples/getTransitivePEUsages.json | 26 --- .../examples/listWorkspaceNotebookKeys.json | 16 -- .../machineLearningServices.json | 171 ------------------ 4 files changed, 214 deletions(-) delete mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/getTransitivePEUsages.json delete mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/listWorkspaceNotebookKeys.json diff --git a/custom-words.txt b/custom-words.txt index 85475fa43129..6aa19385dc88 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -1684,7 +1684,6 @@ tráfico transcoding transcodes transcriptmoderationresult -transitivepeusages translatortext trendingtopics triggeredwebjobs diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/getTransitivePEUsages.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/getTransitivePEUsages.json deleted file mode 100644 index b37c57afc17c..000000000000 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/getTransitivePEUsages.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "location": "eastus", - "api-version": "2020-09-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "transitivePrivateEndpointsUsage": { - "totalUsage": 0 - }, - "transitivePrivateEndpointsQuota": 0, - "privateDnsZonesUsage": { - "totalUsage": 0 - }, - "privateDnsZonesQuota": 0 - } - ] - } - } - } -} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/listWorkspaceNotebookKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/listWorkspaceNotebookKeys.json deleted file mode 100644 index 4182751f0f91..000000000000 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/examples/listWorkspaceNotebookKeys.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "parameters": { - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "testrg123", - "workspaceName": "workspaces123", - "api-version": "2020-09-01-preview" - }, - "responses": { - "200": { - "body": { - "primaryAccessKey": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw", - "secondaryAccessKey": "0KARRQoQHSUq1yViPWg7YFernOS" - } - } - } -} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json index 7154aa1b18b3..3c283424747c 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-09-01-preview/machineLearningServices.json @@ -349,48 +349,6 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listNotebookKeys": { - "post": { - "tags": [ - "Workspaces" - ], - "description": "Lists notebook keys associated with this workspace. The notebook keys are used for loading notebook components, which a reader should have access to. So make it a Get, not Post call", - "operationId": "Workspaces_ListNotebookKeys", - "x-ms-examples": { - "List Workspace Keys": { - "$ref": "./examples/listWorkspaceNotebookKeys.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/APIVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/WorkspaceNameParameter" - } - ], - "responses": { - "200": { - "description": "The request was successful; the request was well-formed and received properly.", - "schema": { - "$ref": "#/definitions/NotebookListCredentialsResult" - } - }, - "default": { - "description": "Error response describing why the operation failed", - "schema": { - "$ref": "#/definitions/MachineLearningServiceError" - } - } - } - } - }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { "post": { "tags": [ @@ -472,53 +430,6 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/transitivepeusages": { - "get": { - "tags": [ - "TransitivePEUsage" - ], - "operationId": "TransitivePEUsage_Get", - "description": "Gets the current transitive private endpoint usage information as well as limits for AML resources for given subscription and location.", - "parameters": [ - { - "$ref": "#/parameters/APIVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "location", - "in": "path", - "required": true, - "type": "string", - "description": "The location for which resource usage is queried.", - "pattern": "^[-\\w\\._]+$" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ListTransitivePEUsagesResult" - } - }, - "default": { - "description": "Error response describing why the request failed.", - "schema": { - "$ref": "#/definitions/MachineLearningServiceError" - } - } - }, - "x-ms-examples": { - "Get Transitive PE Usages": { - "$ref": "./examples/getTransitivePEUsages.json" - } - }, - "x-ms-pageable": { - "nextLinkName": null - } - } - }, "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { "get": { "tags": [ @@ -2380,77 +2291,6 @@ }, "description": "Describes AML Resource Usage." }, - "TransitivePEUsage": { - "type": "object", - "properties": { - "totalUsage": { - "readOnly": true, - "format": "int32", - "type": "integer" - } - } - }, - "PrivateDNSZoneUsage": { - "type": "object", - "properties": { - "totalUsage": { - "readOnly": true, - "format": "int32", - "type": "integer" - } - } - }, - "TransitivePEUsagesResult": { - "type": "object", - "description": "The transitive private endpoint usage in this location", - "properties": { - "subscriptionId": { - "readOnly": true, - "type": "string", - "description": "Subscription id that the transitive private endpoint usage is measured." - }, - "transitivePrivateEndpointsUsage": { - "readOnly": true, - "description": "Transitive private endpoint usage", - "$ref": "#/definitions/TransitivePEUsage" - }, - "transitivePrivateEndpointsQuota": { - "readOnly": true, - "description": "Transitive private endpoint quota that currently set", - "format": "int32", - "type": "integer" - }, - "privateDnsZonesUsage": { - "readOnly": true, - "description": "Private DNS zone usage", - "$ref": "#/definitions/PrivateDNSZoneUsage" - }, - "privateDnsZonesQuota": { - "readOnly": true, - "description": "Private Dns Zones quota that currently set", - "format": "int32", - "type": "integer" - } - } - }, - "ListTransitivePEUsagesResult": { - "properties": { - "value": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/TransitivePEUsagesResult" - }, - "description": "The list of transitive private endpoint usages." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URI to fetch the next page of transitive private endpoint usages information. Call ListNext() with this to fetch the next page of AML resource usage information." - } - }, - "description": "The List transitive private endpoint usages operation response." - }, "ListUsagesResult": { "properties": { "value": { @@ -2958,17 +2798,6 @@ "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", "x-ms-azure-resource": true }, - "NotebookListCredentialsResult": { - "type": "object", - "properties": { - "primaryAccessKey": { - "type": "string" - }, - "secondaryAccessKey": { - "type": "string" - } - } - }, "ListWorkspaceKeysResult": { "type": "object", "properties": {